Denna diskussion är för närvarande "vilande"—det sista inlägget är mer än 90 dagar gammalt. Du kan återstarta det genom att svara på inlägget.
Anyone care to recommend a good first Lisp book? Would I be crazy to hope that there's one out there with an emphasis on using Lisp in a web development and/or system administration context? Not that I'm unhappy with PHP and Perl, but the best way for me to find the time to learn a new language is to use it for my work...
I guess I should add a book or two for good measure Programming Ruby and Ruby for Rails are good starters.
##Corrected spelling :-( and fixed mangled link
The Little Schemer is a good introduction to Scheme (and much of the knowledge also applies to LISP) for someone absolutely new to the language.
I learnt LISP at college and we didn't use a book for the most part (well it hadn't been standardised into Common Lisp then) and we were taught it in a very functional style (like Scheme).
I certainly wouldn't start out learning a language by targetting myself at a particular solution space. I can't think of any LISP books that target any solution space other than AI - they are all general purpose books about the language.
I am not so sure about wanting the book to share this domain space, though. I think that might encourage copy and paste without getting a firm grasp of the fundamentals of this general purpose language.
I am afraid that I do not have any specific book recommendations; we just made it up as we went along ;). But there are loads of net resources; the comp.lang.lisp FAQ comes to mind right away. I know dozens of people who use CL for solving hard real-world problems. Proponents are not shy, despite repeated bashings from people scarred by a bad undergraduate introduction. LT may not have critical mass; hunt around a little more elsewhere.
Do look for an implementation to use that comes with or supports building blocks to start what you need to do. A non-trivial well written Lisp program is usually a new domain-specific language. This may not be obvious because the surface syntax does not change. It feels like working with XSD or JSON but with tighter language integration.
So maybe I should have called this topic, Should I learn Lisp or Ruby next? ;)
If your interested in scheme, have a look at the PLT project. They have a nice scheme implementation, and a book on scheme called how to design programs.
I'm a web developer using both Common Lisp and Ruby, and would definitely recommend Lisp over Ruby. Ruby's support for abstracting concepts doesn't come close to what you get with macros, and I've found CL's object system, and error handling to be much more powerful than the ruby equivalents. It's still a nice language if you want to do some quick object oriented programming and can't use smalltalk or Cl, and is worth learning sometime, but I think you'll gain a lot more from learning lisp.
Here are some books on both ruby & rails worth looking at:
If you decide to pursue the rails framework, be sure to look at Ruby for Rails by David Black as it focuses more ruby oriented rails dedvelopment.
If you decide to pickup Agile Web Development with Rails then you may want to consider ordering the 2nd edition from Pragmatic Programmers. Currently it is a beta book, but there a have been a lot of changes in the Rails framework between the 1st edition of the book (Rails 1.0) and the upcoming second edition (Rails 1.1.6, possibly 1.2).
As an introduction to Lisp you can't go past The Little Lisper. Be warned however that it's not a Lisp manual. It's actual focus is to teach beginners to think recursively, a very useful tool when programming. (The Little Schemer is the updated version I believe).
I am in the same boat. After extensive research I have decided to learn either Ruby or Lisp. I am going with Lisp because of The Little Lisper hoping for some improvement in my very poor recursive thinking, but Ruby is my ultimate goal. Ruby attracts me greatlly but I think I've got to learn to program first.
Be aware there are many free online resources for both languages:
http://www.ruby-doc.org/docs/UsersGuide/rg/ (Matz's tutorials translated - the creator of Ruby)
http://www.gigamonkeys.com/book/ (Practical Common Lisp)
http://www.paulgraham.com/onlisptext.html (On Lisp)
http://swiss.csail.mit.edu/classes/6.001/abelson-sussman-lectures/ (video lectures linked above)
Learn both. But learn Lisp first. :-)
I'd encourage you to look at Scheme; there's a wealth of good (online) books on it (How to Design Programs; Structure and Interpretation of Computer Programs); and some great user communities (the PLT and Chicken communities are fairly large, knowledgeable and generally very helpful.)
As for Scheme, I believe PLT Scheme has some examples of web programming. This is also the Scheme you use with How to Design Programs.