Here is a not so simple patch for performing the simple task of simplifying expressions. Feed it any arithmetic expression in the form of a list, and it will simplify it, respecting bracket order, just like a scientific calculator.

Ie. if you sent it the message "(3 + (5 - 2))" it will return "6".

On my machine, it can handle up to 23 bracket layers before reaching a stack overflow.

I doubt that many people will find this useful, but here it is anyway!

Libraries used: zexy, moocow, list-abs.

calculator.zip