I think Haskell is the purest functional language. If you want to learn functional programming, lambda calculus and lazy evaluation, this is the language of choice. Lisp is still the dominant AI language, and you might find it more useful for "real-world" applications. It is not as pure, but it has been around for a while and evolved (and mutated) quite a lot. I think, but I'm not sure, that it is the oldest computer language still in use. Another tip: if you have a Linux box, take a look at the Emacs editor. It has a great Haskell mode, and an even better Lisp mode (including an interpreter). Emacs is based on Lisp, and so are numerous other GNU applications, meaning you will never run out of code samples... /moliate