(rewritten from primitive understanding of the lexer/scanner situation)

Take tokens generated by the Lexer and interpret/parse them for math patterns.

Function should recursively separate into one of these patterns until no matches remain:

math, operator, math

(math, operator, math)

function result, operator, math

math, operator, function result

(function result, operator, math)

(math, operator, function result)

and create an appropriate tree with the relative positions of each token (number, operator, parenthesis).