When did you first try Lisp seriously, and which Lisp family member was it?
I started working with Lisp seriously only around February of 2004. My first try was with PLT Scheme, but I quickly moved over to Common Lisp because it seemed like a more solid base for the kind of development I want to do.
What led you to try Lisp?
Paul Graham?'s essays, and Eric Raymonds essays, and a general curiosity that has been lingering since around 2001 when I was briefly exposed to some of the ideas that are in Lisp.
What other languages have you been using most?
My favorites before Lisp were Ruby and Objective-C, since they were the only languages I could really feel like I got things done with at a reasonable pace. I code C++ for Lockheed Martin, and while I am very good with the language, I still feel like everything is an incredible effort. Lisp has been my outlet.
How far have you gotten in your study of Lisp?
I don't know. I'm starting to find my code in other languages changing to reflect some of the clever idioms that Lisp offers. Specifically, I find my code getting more and more functional and working more and more under the assumption that functions will be passed in (in whatever capacity the language supports).
What do you think of Lisp so far? ll I can say as I delve deeper into Lisp is, Why didn't anyone tell me about this before???. I mean, come on! Lisp does everything I've been pining and whining about since day one as a programmer, and it does it with panache.
As an excercise, I sat down and worked out how you would reduce some common Java, Ruby, and C constructs to Lisp. It was easy. As an educational experience, I tried the reverse. Now, I know Java, Ruby and C about as well as anyone expects you to know a language. Moreso, for Ruby and C. I couldn't do it for some things. Simple things in Lisp, like defining a decision tree network, were just more code in other languages. Ruby was the only language that could even begin to keep up. I could sort of kludge it along with C++, but the declarations for classes really upped the line count, and the code was unclear.
I'm starting to see why so man Lisp users seem so damn smug. Lisp is doing what cutting-edge scripting languages are doing. It has been doing them since the 1970's. Moreover, it's doing them faster, and in a more generalized manner!
But it seems to me that people have some slightly justifiable fear of Lisp. It's downright alien looking. There is a very weird compile-run cycle in lisp (it does compile, but you don't really see it), and the term "macro", while glorious in Lisp, sends shivers down the spine of any C programmer.
Finally, a language that doesn't punish you, but that acts as an intelligence amplifier. With macros, you can literally extend the language arbitrarily, and in a predictable way.