Collect all of the variables from an svex.
(svex-vars x) → vars
We collect the set of variables for an svex by computing the exact sets of variables for all of its subexpressions, and unioning them together. This is logically nice to reason about and is sometimes practical to execute.
Although we memoize this function to take advantage of structure sharing, constructing the exact set of variables for every subexpression quickly becomes very memory intensive. For better performance, it is often better to use svex-collect-vars instead.