I’ve been getting several emails lately from the ACM about nominations for the best classical computer books. They’re holding a vote to find the best of out of print computer books. There was an initial nomination process and now they’re into the voting. There is even a wiki setup to peruse and comment on the nominees. This got me going on a search for expanding my programming knowledge. I’ve exhausted the commonly available sources and have to look far and wide for new things to study. In so doing I’ve come across several books by Paul Graham and Peter Norvig on Lisp.
I’d heard a lot about the language over the last several years, but never had the time to sit down and try it out. There have been several articles that have popped up lately about the positive experiences in learning the language so I thought I’d take a look.
My studies have started with three books, “Structure and Interpretation of Computer Programs”, “Ansi Common Lisp”, and “Paradigms of Artificial Intelligence Programming, case studies in common lisp”. I’m moving through all three books at the same time and so far I would highly recommend these to anyone trying to get to a deeper understanding of computer programming. There was also a history of Lisp on Paul Graham’s website that is a very interesting read. It’s rather awe inspiring that Lisp is second only to fortran in age, but has concepts that most other languages are only now catching up with.
As a side effect of studying lisp, I’ve had to pick up using Emacs as an editor. I had used vi primarily for command line editing, but I’m really starting to take to emacs. The commands seem more intiuitve to me and a bit easier to get more power out of the editor.
Well, I’m excited about the mind stretching to come. Not sure how useful lisp will be in terms of paying the bills, but it should be good for an intellectual excercise. Besides, keeping the brain sharp is job #1 for a programmer.