ThomasMunro
I, Thomas Munro, do solemnly offer these my responses to The Road to Lisp Survey*:

*Rewritten from scratch after original page was lost in the great wiki forgetfulness


When did you first try Lisp seriously, and which Lisp family member was it?

I first tried a Lisp seriously in 2005, and it was Scheme. (I saw some kind of Lisp at university a decade earlier, and I'd seen plenty of Emacs Lisp, but I'd never pursued it).

What led you to try Lisp?

John Koza's book Genetic Programming -- On the Programming of Computers by Means of Natural Selection. I wrote working toy genetic programming implementations in Python and then C++, but in the process of learning how to make my own expression evaluators for those languages, I got sucked into the Scheme literature. As you might have guessed, before long I couldn't see the point of the C++ scaffolding and switched to a real Lisp for that project, and then eventually all other experimental hacking.

What other languages have you been using most?

In my programming job I work mostly with typical commercial languages like C, C++, Java, Python and sometimes Fortran (and I really enjoy most of those languages when they're done well). I my own time, I usually hack in Common Lisp or C++ these days. I think Scheme is the nicest of the Lisps in many ways, but I found I was wasting too much precious hacking time trying to find, port or write libraries -- and sweet Common Lisp eases the pain.

How far have you gotten in your study of Lisp?

I don't feel like a total beginner anymore, but there is obviously no end to how much you can do and learn with it. As for implementation, I have written simple Scheme interpreters, which may pass for a kind of minor rite of passage, but I would really like to understand compilers better.

What do you think of Lisp so far?

I love it -- it's changed how I think about computation and this has certainly affected my work in other languages too (just like they always said). My plan to learn Haskell or ML next 'after' Lisp have so far been delayed by several years. The Emacs + SLIME + SBCL combination is very pleasing and practical to work with. Maybe it's something like the old Lisp Machines of legend, or like the TI Explorer system that Dr Koza did his GP work on?


Switch Date 2005