

Ask HN: Which Lisp book should we publish first? - lispython

Hi all, I'm an editor of a Chinese press. For now, there's only 2 book about lisp in China: HtDP and SICP. But both of them are not really "lisp" book. Do you think it is necessary to publish a lisp book for students and programmers? If yes, which one should be first? PCL, ACL, OL or PAIP? Thanks.
======
J_McQuade
I'd say Practical Common Lisp. While I actually favour all of the other books
myself, I think that PCL is the better bet for a publisher, concentrating as
it does on themes more relevant to the average non-lisp programmer.

(I'd probably pick PAIP as the best of the lot, though)

------
almost
For those that don't know (probably smaller on here then elsewhere but still):

HtDP: How to Design Programs SICP: Structure and Interpretation of Computer
Programs PCL: Practical Common Lisp ACL: ASCII Common Lisp PAIP: Principles
off Artificial Intelligence Programming OL: On Lisp

Personally I'd probably go for PCL because it's... practical.

OL is pretty awesome though, I wish someone would reprint it in English, I
have a self printed copy but I'd very much like to own a proper one!

~~~
cryptical
Do you mean ACL: ANSI Common Lisp and PAIP: Paradigms of Artificial
Intelligence Programming?

~~~
almost
Whoops! I did. Both of them are on the shelf just above my computer so I've
got no excuse!

Off topic: What happened to the edit link? I want to hide my mistakes! ;]

------
plinkplonk
I would _highly_ reccomend PAIP and OL (in that sequence). PAIP is fantastic
in that it provides a 1000 pages of _elegant_ code which conveys the "lisp
way" by a master of the langauge. OL is of course the macro book par
excellence.

I wonder if there are any other books that show exemplary code in various
languages which are not so much "Introduction to X" as "Here is how the
masters of the language write code in language X and "think in" X . I know of
"Lua Gems", "C interfaces and implementation" and "The Art Of Prolog" which
fall into this category. Any others?

~~~
Tyheam
I think "Thinking Forth" fits in there as well.

~~~
plinkplonk
ahh yes good choice! Thanks!

------
steveeq1
The Little Schemer: [http://www.amazon.com/Little-Schemer-Daniel-P-
Friedman/dp/02...](http://www.amazon.com/Little-Schemer-Daniel-P-
Friedman/dp/0262560992/ref=sr_1_1?ie=UTF8&s=books&qid=1261839444&sr=8-1)

------
gommm
Hi, I'd go with PCL it's a good practical introduction...

Off topic, but where in China are you based? If you're in Shanghai maybe we
can meet up sometime, I always like meeting fellow HNers!

~~~
lispython
Hi gommm, it's really nice of you. I'm living in Wuhan now, but since I go on
errand a lot, maybe we can meet up in Shanghai someday.

~~~
gommm
Sure, when you come to Shanghai, send me an email :-)

------
lispython
Since a lot of people think PCL is a good choice, what do you think the new
book Lisp Outside the Box form Nick Levine, It's a practical introduction too.

~~~
gruseom
Haven't read Levine's book, but from the chapter summaries I've seen, I'd say
it's less general-purpose.

I like all the books you mentioned in your original post. OL is probably the
best, but it doesn't make sense to read it first. I learned from both ACL and
PCL and like ACL better because it's more systematic. But this seems to be a
minority opinion.

------
herdrick
_On Lisp_ is unique. I wouldn't go with PAIP because AIMA has replaced it. But
what's covered in _On Lisp_ isn't found anywhere else.

~~~
gjm11
In what possible sense has AIMA replaced PAIP? PAIP is crammed to the gills
with substantial pieces of Lisp code that do interesting and useful things; it
focuses as much on the "programming" as on the "artificial intelligence" and
has a lot specifically about Lisp. AIMA has code snippets but not much more,
and actually they're generally (always? I forget) pseudocode, not actual code
in Lisp or any other language.

AIMA is a fine book. PAIP is a fine book. I don't see how you could possibly
use either of them to replace the other.

~~~
herdrick
Well, Norvig recommends AIMA over PAIP now for machine learning. I guess if
what you want is Common Lisp code, then your choice must be PAIP.

------
rosejn
Practical Common Lisp, or even better, Programming Clojure.

