Following the response to my response I was interested enough to read the article again, and start playing around a bit
with the language. I downloaded CLISP and started trying it out.
Where did your road originate?
I started programming BASIC on the Commodore 64 and on an Amstrad word processor. Next I got an Amiga and used Amiga Basic,
Prolog, assembler and later on C. That was it until University where I got to use Prolog and C extensively, and was exposed
in lesser degrees to Fortran, Lisp and Poplog.
How far have you gotten in your study of Lisp?
I was able to write my standard set of 'learning the language' type programs in the first few weeks. Stuff like counting
all the words in a book and reporting the frequency, playing blackjack and solving Boggle boards with a dictionary of words.
I played around making an MSN Messenger client based on some code which was only partly finished because I got bored
of doing it and realised that the source code I was porting from was no longer working.
I am at the stage where it is my general purpose language of choice. I find because it is always sat there ready to eval something
that I use it for all kinds of stuff such as conversions of currency and temperature. As well as any calculations, spreadsheet
and data manipulation, which I do a fair bit of when scheduling tasks at work.
Since then I've been very slowly trying to get a platform together to do Gui and graphics stuff. That proved to be a real pain
in the ass. CLISP has a bunch of stuff that works pretty well on Linux, like Gtk and Ltk. I switched to Corman Lisp and then
Lispworks, and settled with Lispworks. It has a functional GUI API of its own (CAPI) plus had the most solid development
environment and foreign function handling.
What do you think of Lisp so far?
I love the dynamic nature of the REPL... code feels more alive on screen. I know I can evaluate and execute bits of code on my page, and I feel a lot more like the code is there to do stuff for me, rather than I am building a static program to run.
That and the succintity of the code makes a real difference. I can have just a few lines of code that do a lot, contrary to C++ which takes the opposite approach.
I also find it enjoyable to work with for reasons that are hard to say. But I often will tinker around and rewrite bits of lisp for no other reason than I've learned a new way to do something, and it looks nicer. There's an elegance and beauty when you get it right.
I've found that while the core of common lisp is very mature and does a lot, once you get outside the ANSI standard there really
is a lot less there for you than with say C++ and Visual Studio, Python and Java. The best way to go if you want everything
is to use a commercial lisp (all of them offer usable trial versions), and be prepared to pay a lot of money for the license
if you want to distribute your program or use it professionally. This is true for other languages (except maybe Java) as well but
to a lesser extent.