The isvariable function doesn't take into account that symbols might have a corresponding definition in the Main or Base module or any other module that a user passes to the SymbolTable when evaluating.
Therefore, isvariable should take an optional module and also check whether a symbol is defined in either of these three modules before determining something is a variable.
The
isvariable
function doesn't take into account that symbols might have a corresponding definition in theMain
orBase
module or any other module that a user passes to the SymbolTable when evaluating. Therefore,isvariable
should take an optional module and also check whether a symbol is defined in either of these three modules before determining something is a variable.