When did you first try Lisp seriously, and which Lisp family member was it?
Spring of 2003 in Scheme.
What led you to try Lisp?
Curiosity over something that I had learned a bit about early on in life, only to have abandoned it for a few years and then rediscovered it through various mentions of Lisp on the internet, and Paul Graham's essays in particular.
Where did your road originate?
My first programming language was Pascal, the standard language taught in high school computer science in Canada (or BC at least). In the senior course, however, they changed it to C++ and when I was going through it, they were in the middle of changing it to Java. I took this course back to back with a free period under the guise of a specially developed technology course (read: games and internet). In any case, I got to know the teacher a little better this way, and he pushed me into Lisp to prepare me for a university that taught Scheme in first year.
As luck would have it, I ended up at a different university where they taught extensively in Java. So for the first three years of my university life, I'd almost completely forgotten about Scheme and Lisp.
In year three, I'd just finished my second co-op/internship, 8 months of PHP programming, and while it was an easy language to program in, it was also annoyingly volatile over different versions and was also hobbled by a very poor implementation of OOP (at the time). Searching the internet for people's experiences in building web applications landed me at Paul Graham's page and thus, the return to Lisp after Pascal, Scheme (aborted), C, C++, Java and PHP and some Perl.
How far have you gotten in your study of Lisp?
Not far. I'm currently working my way through SICP and The Little Schemer in my free time before and after work, which isn't much, because I'm currently doing an internship in a Japanese company where 12 hour workdays are the norm. Hopefully I'll get into Paul Graham's Ansi Common Lisp soon, which is just sitting on my bookshelf right now.
What do you think of Lisp so far?
Malleable. Powerful. It carries with it a lot of history that gives perspective on the fad-ish tendencies of computer science today. Perhaps this is a generalization, but a fair one considering the number of languages I cycled through. Of course, it's also an incredible relief after too much C++ programming at work.
Arguably, you can achieve incredible results in languages other than Lisp, but the syntax is so transparent that other languages are awkward at best. C++ and Perl, for example, are powerful languages, but to express yourself in them requires an indecent amount of work haggling with either awkward syntax (C++'s STL, Perl's free-for-all syntax) or sick amounts of hacking wizardry (template meta-programming, function pointers, etc). Neither language makes their syntax easy to learn, remember, or use. And ultimately, by the time you reach the wizard status wielding your templates and functors, your wand is creating nothing but "an ad-hoc, informally-specified bug-ridden slow implementation of half of Common Lisp" and you've fallen to Greenspun's tenth.
Switch Date 2003
RtL Language Curiosity | RtL Paul Graham | RtL SICP