Richard Welty <[EMAIL PROTECTED]> writes: > i'm working with a friend on a potential startup. i would like to build the > prototype in lisp (of course). my friend is an experienced programmer (but > not in lisp). i'm looking for a recommendation on a current book on lisp > that will function as a good introduction for someone in his situation > (he's a first rate RDBMS guy and knows other OO and pseudo-OO languages > like Java and C--.)
Oh good, he knows Java, he won't be totally weirded out. People who only know C-- as OO get really confused with Lisp in my experience. Be very patient as you explain the separation of Classes and Methods. Particularly when you get to Generic Functions. This comes very hard to people from the procedural world, I've found. So do symbols. It's hard for them to get used to using what they see as 'variables' as values of their own (in the sense that quoted symbols are often used as data without looking at their value cells). Also urge them to resist explicit data typing -- although in the end it's good for compilation it distracts the Lisp newbie from the possibility that any random datum can be any type, and of the flexibility this implies. > i'm pretty much out of touch with lisp books, i learned common lisp from > the first edition of steele after a year of writing zetalisp. I'd recommend Paul Graham's _ANSI Common Lisp_ and _On Lisp_, and Sonya Keene's _Object-Oriented Proramming in Common Lisp_ for study books. For advanced study move on to Steele's _CLtL2_ and Kiczales and Bobrow's (and someone else whom I've forgotten!) _The Art of the Metaobject Protocol_. The CLtL2 is of course an excellent reference to have by one's side or in one's laptop bag for perusal when the battery goes dead and the Pitmanual is no longer accesible. And the AMOP is required reading every couple of years, just to keep refreshed on the magic that's going on behind the object scenes in your favorite Lisp (which had better be CMUCL!). For general Lispish knowledge there's also a couple of others I'd recommend. Jones and Lins's _Garbage Collection_, Friedman, Wand, and Haynes's _Essentials of Programming Languages_, and Quiennec's _Lisp in Small Pieces_ are all good pedagogy on how Lisp and other similar languages work. Two of these use some weird Lisp-like language called "Schemer" or something, that while not exactly Lisp could easily make you think so at first glance, kinda like Emacs-Lisp does. BTW, I would definitely recommend _Garbage Collection_ to the RDBMS type. While not having anything directly to do with RDBMSs it does appeal to the DBA's instinct to worry about how storage is handled, something that Lispers tend to take for granted too often. There's also oodles of good papers, but I won't bore you with them. HTH 'james -- James A. Crippen <[EMAIL PROTECTED]> ,-./-. 61.2204N, -149.8964W Lambda Unlimited: Recursion 'R' Us | |/ | Anchorage, Alaska, USA, Y = \f.(\x.f(xx)) (\x.f(xx)) | |\ | Earth, Sol System, Y(F) = F(Y(F)) \_,-_/ Milky Way.
