> > Would it be helpful to learn Lisp in order to improve programming skills in Mathematica? Possibly. > > If so, what Lisp books would you recommend? Many people seem to think Practical Common Lisp (free online) by Peter Seibel is good. I like Peter Norvig's Paradigms of AI Programming, which even shows how you might write a Mathematica-like program, including matching, simplification, integration in Lisp.
> > What variant of Lisp would you recommend using for practice - Common Lisp, Scheme, or Clojure?
It doesn't matter much, for your purposes. You can get free or trial versions of any of these. Maybe what you need is something like "lisp in a box"
Would Mathematica itself be a better choice probably not (I am not sure if it supports all the Lisp language constructs and such). it doesn't > > What about Haskell? another functional language with a small but enthusiastic group of users.
Learning to think in a functional programming framework is probably a good idea that could pay off even if you intend to eventually write in Mathematica.