Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site clan.UUCP Path: utzoo!dciem!nrcaero!clan!holtz From: holtz@clan.UUCP (Neal Holtz) Newsgroups: net.ai Subject: Thus Spake the DOD ... (really: Lisp books, this time) Message-ID: <159@clan.UUCP> Date: Sat, 9-Mar-85 10:31:09 EST Article-I.D.: clan.159 Posted: Sat Mar 9 10:31:09 1985 Date-Received: Mon, 11-Mar-85 02:46:40 EST Distribution: net.lang.lisp,net.lang.ada Organization: Systems Eng., Carleton Univ., Ottawa, Canada Lines: 53 > Okay, this is the first time anyone has said anything that has sparked my > interest in looking at Lisp. So tell me, where can I find a good book to > teach me Lisp and what is it called? > - Robert A. Pease Two very good candidates are: 1. Winston, P.H., and Horn, B.K.P., (1984), "LISP - Second Edition", Addison Wesley. (Note that the second edition is much improved over the first). 2. Abelson, H., and Sussman, G.J., (1985) "Structure and Interpretation of Computer Programs", MIT Press. The second does not purport to teach Lisp, it just uses it to discuss important ideas in programming (it actually uses Scheme, a not generally available dialect, but in most cases that doesn't differ substantially). In spite of that (or perhaps because of it), it is still very usable to learn from. The first book is more traditional in that it explicitly sets out to teach Lisp (using Common Lisp, in this case), but does discuss many of the same ideas. In my opinion, you might find Winston and Horn a bit easier to learn from, but you really should have both. Its probably irrelevant now, but the one book that you should stay as far away from as possible, should you ever see it on the remaindered book shelves, is: 3. Tracton, Ken, (1980), "Programmer's Guide to LISP", No. 1045, TAB Books. I was deeply offended by this book; I know of no "better" way to discourage people from learning Lisp than to give them this to learn from. It is particularly unfortunate in that it is the type of book that would easily fall into the unwitting hands of the neophyte, being inexpensive and, on the surface, being simple to understand. It was obviously directed at the "home hacker" market, but it does a great injustice to those people. Almost none of the examples show the power of the language; most are straightforward numerical examples at which Lisp offers no obvious advantage. In the few examples that are more "lispy", there is no mention as to why you might want to do such a thing. The style of presenting programs is atrocious (e.g., no indentation to show structure). It is riddled with errors. On two separate occasions I have turned to pages at random (a total of 11) and found errors on all but one -- I usually quit looking after the first (page 89 was the only one on which I did not find any obvious errors). Sorry, Ken, if you read this, but the afternoon you spent writing the book and checking the proofs did not greatly advance the art and science of computer programming. - Neal Holtz Dept. of Civil Engineering Carleton University