Also what's up with the acceptance of single letter variables in math?
a(b + c) + (b - d - a)(b + c) = (b - d)(b + c)
But it will be hard to simplify
add(mul(amins, add(boo, cold)), mul(…
You are not expected to understand what the notation means without further context, in the same way a programmer is not meant to see a function call to main(foo) and understand what will happen.
The Mechanics package for MIT-Scheme adds a whole computer algebra system so that it can compute the derivatives of ordinary Scheme functions, symbolically evaluate them, etc.
https://groups.csail.mit.edu/mac/users/gjs/6946/sicm-html/bo...
Edit: juxtaposition without some sort of brackets, of course