Add Tokens for left and right square brackets, add a static string-lambda hash-map on ExpressionSyntax, use similar to code Paren syntax. Functions should only be evaluated if their contents can be evaluated.
Potential Issues
Can easily be mistaken for implicit multiplication (#6 )
Some trees may wish to share the same functional environment (the same hash-map), but others may not. It might be worth it to find a better place to store the function definitions. Additionally, if they are in a different class they can't be private, allowing outside access.
Description
Functions would be defined:
<SYM>[<VAR>] = <EXPRESSIONSYNTAX>
And called<SYM>[<EXPRESSIONSYNTAX>]
:Implementation
Add Tokens for left and right square brackets, add a static string-lambda hash-map on ExpressionSyntax, use similar to code Paren syntax. Functions should only be evaluated if their contents can be evaluated.
Potential Issues