Live data from Hacker News

On Lisp

paulgraham.com

11–20 of 107 posts

Re: On Lisp

#12

I've been meaning to read this for quite some time, but I've been told that the idioms and coding style is outdated, or not very good. This isn't going to stop me, but I'd like to know from some experienced lispers what problems I might encounter. Especially as I'm pretty inexperienced myself. I definitely won't know what to look for.

The book uses common lisp, so you'll need to know how to read that. Otherwise I think you should be fine. It's not a book about idioms or coding styles, but about thinking in lisp. If the code examples are confusing, it'll be because you're not sure what something means in common lisp or because you're learning new ideas, not because the code is poorly written. So, if you treat it as a book of ideas as opposed to "te…

However, if you ARE looking for a "teach yourself Lisp in 24 hours" type of book, you could do a lot worse than "Practical Common Lisp" by Peter Seibel (http://www.amazon.com/Practical-Common-Lisp-Peter-Seibel/dp/...).

Re: On Lisp

#13

I've been meaning to read this for quite some time, but I've been told that the idioms and coding style is outdated, or not very good. This isn't going to stop me, but I'd like to know from some experienced lispers what problems I might encounter. Especially as I'm pretty inexperienced myself. I definitely won't know what to look for.

The book still works even if you assume every specific line of lisp in it is hopelessly outdated (I wouldn't know, I'm not a lisp programmer).

Suppose you were looking at lisps and got around to the part where you realize homiconicity makes it possible (and/or sensible) to have language facilities like syntax macros. What would such a facility look like in practice? What would it be used for and how? What could go wrong defining it or using it? That's the sort of thing that's covered in On Lisp and it makes it an interesting read for any sort of programmer, rather than just a lisp one. The book is short, without being incomprehensibly dense, you get easily get a feel for it from just browsing the PDF for a bit. And the concepts being presented are a lot easier to digest than, say, 'what if your language was really good at category theory'.

Re: On Lisp

#14

Earlier quoted context omitted.

The book uses common lisp, so you'll need to know how to read that. Otherwise I think you should be fine. It's not a book about idioms or coding styles, but about thinking in lisp. If the code examples are confusing, it'll be because you're not sure what something means in common lisp or because you're learning new ideas, not because the code is poorly written. So, if you treat it as a book of ideas as opposed to "te…

However, if you ARE looking for a "teach yourself Lisp in 24 hours" type of book, you could do a lot worse than "Practical Common Lisp" by Peter Seibel ( http://www.amazon.com/Practical-Common-Lisp-Peter-Seibel/dp/... ).

PCL is also available for free at http://www.gigamonkeys.com/book/

Re: On Lisp

#15

Earlier quoted context omitted.

The book uses common lisp, so you'll need to know how to read that. Otherwise I think you should be fine. It's not a book about idioms or coding styles, but about thinking in lisp. If the code examples are confusing, it'll be because you're not sure what something means in common lisp or because you're learning new ideas, not because the code is poorly written. So, if you treat it as a book of ideas as opposed to "te…

However, if you ARE looking for a "teach yourself Lisp in 24 hours" type of book, you could do a lot worse than "Practical Common Lisp" by Peter Seibel ( http://www.amazon.com/Practical-Common-Lisp-Peter-Seibel/dp/... ).

Another rec: Land of Lisp - http://landoflisp.com/ - is also very good if you're looking to get up to speed with the absolute bare bones, so to speak, fairly quickly.

Re: On Lisp

#16
Lisp is a dangerous language that shouldn't be taught or used these days. There are plenty of superior programming techniques.

Mathematical programming - linear programming, finite domain constraint programming, constraint logic programming, logic programming, relational programming

Static functional programming - ml, haskell

A good modern introduction to programming is Concepts, Techniques, and Models of Computer Programming, by Peter Van Roy and Saif Haridi. It's far superior to the commonly mentioned lisp book Structure and Interpretation of Computer Programs.

Re: On Lisp

#17

I've been meaning to read this for quite some time, but I've been told that the idioms and coding style is outdated, or not very good. This isn't going to stop me, but I'd like to know from some experienced lispers what problems I might encounter. Especially as I'm pretty inexperienced myself. I definitely won't know what to look for.

It is written to a prior version of the Common Lisp standard, and with a very old-fashioned style. You'll see calls like (REPLACA pair val) instead of (SETF (CAR pair) val) and so on. That will irk you if you are a Common Lisp hacker already. If you're not, just keep in mind that good CL style results in somewhat prettier code than that in On Lisp.

I tried reading this back when I started writing lisp- and it's been a year since. I know I got stuck when I couldn't find functions in slime with C-d C-h, and just assumed that they were defined by the book. This is much more reassuring.

Re: On Lisp

#18
post #16

Lisp is a dangerous language that shouldn't be taught or used these days. There are plenty of superior programming techniques. Mathematical programming - linear programming, finite domain constraint programming, constraint logic programming, logic programming, relational programming Static functional programming - ml, haskell A good modern introduction to programming is Concepts, Techniques, and Models of Computer Pr…

>"Mathematical programming - linear programming, finite domain constraint programming"

Huh? I am not sure if you are trolling or if you copied and pasted that without further investigation, but comparing operation research algorithms (such as linear and finite domain constraint programming) with a programming language is at the very least... disingenuous.

> "Lisp is a dangerous language"

That's a very strong and weird statement, would you mind to explain? because to me is completely the opposite.

Re: On Lisp

#20
post #16

Lisp is a dangerous language that shouldn't be taught or used these days. There are plenty of superior programming techniques. Mathematical programming - linear programming, finite domain constraint programming, constraint logic programming, logic programming, relational programming Static functional programming - ml, haskell A good modern introduction to programming is Concepts, Techniques, and Models of Computer Pr…

[deleted]
Post reply on HN