Edit: okay, I've since decided that the original challenge was perhaps too ambitious a goal for BASIC. I've modified it, slightly.

Using pure TI-BASIC, write the smallest program that parses a mathematical expression stored in Str0, without using expr( or storing strings to functions or tricky things like that. The program needs to handle addition, subtraction, multiplication, division, exponentiation, unary negation, factorials, and parentheses with proper operator precedence and the proper direction for associativity.