#### Redglyph

##### SasqWatch

Yes, I've have developed a fast C-API that could convert functions in algebraic notation in RPN (which is basically a stack of operators and operands. This converted RPN-lists then could be

a) calculated

b) differentiated

c) optimized Example: ((4a * 3a)+2a*a) would be optimized to 14*a*a

c) is somewhat complicated - I implemented hundrets of optimzation-rules

like

a*1=a

a+0 = a

a*0=0

…

in RPN

That could be handy to build a calculator handling expressions (or if you program in FORTH), and it must have been fun to do.

HP could have used it, I remember a function to convert an algebraic expression to an RPN program on the 48 series. I don't think it could do any simplification on the RPN form, since it was a program, but I'm not sure. All the simplifications / manipulations were done on the algebraic form IIRC.