learning lisp [04/07/2006 07:51:00]
I started working through Practical Common Lisp yesterday.
It turns out that lisp rocks. I'm not convinced that it's time to abandon python, but I certainly have feature envy. Here are some things I really like:
- transparent data storage -
You don't need special tools to parse and serialize your data.
You can just dump it to a file with
printand read it back in withread. And the data is easily edited by hand. - macros - your code is just another kind of data, which means it's easy to write code to analyzed and manipulate other code. I don't know how many times I've grumbled that I couldn't express something concisely in python or perl (and don't even get me started on VB and java)... With lisp, if you want to add a feature to the language, you just write a macro and it's there.
- SLIME - the superior lisp interaction mode for emacs. I've always loved python's interactive prompt, but now I see I've been missing out. The editor, prompt, and debugger are so much more integrated in the lisp world.
The entire text of the book is online, and there's even a lisp in a box download that contains a version of emacs preconfigured with slime and your choice of lisp compiler, so it's easy to get started.
Chapter Three is called Practical: A Simple Database. You can start there for a quick tour that shows off a whole lot of power all at once. Definitely worth checking out.
