Scan barcode
kartik's review
5.0
Definitive book to understand how to think recursively. Best read while following along with the exercises in an interpreter like DrRacket.
Thoroughly enjoyed the humor embedded in each page and learning about mind-boggling concepts like the Y Combinator while reinforcing the technique of programming recursively.
Thoroughly enjoyed the humor embedded in each page and learning about mind-boggling concepts like the Y Combinator while reinforcing the technique of programming recursively.
kras143's review
5.0
This is one of the must read books for every programmer. Also a very good read in general even if you don't directly use everything the book has to offer. The book mainly deals with recursion as an aid to solve several problems and in the process describes how to develop a full fledged compiler given a very minimal set of constructs to start with. The Q&A format felt little weird at the beginning but the authors not only used it effectively but made it a delight to read.
I finished the book in three days. The last two chapters though required a couple of re-reads to understand fully. Especially chapter 9 which describes the Y combinator requires more than few reads. I am really looking forward to the next book The Seasoned Schemer
If there is a revised edition in the future I only hope that the authors will add more practical applications of the theory developed in this book. What is the use of Y combinator? Tail recursion optimization?
I finished the book in three days. The last two chapters though required a couple of re-reads to understand fully. Especially chapter 9 which describes the Y combinator requires more than few reads. I am really looking forward to the next book The Seasoned Schemer
If there is a revised edition in the future I only hope that the authors will add more practical applications of the theory developed in this book. What is the use of Y combinator? Tail recursion optimization?
scottkirkwood's review
I've heard great things about this book.
I'm not enjoying it - too much work.
I'm not enjoying it - too much work.
einarwh's review
5.0
This is one of my favorite books. It has a unique form that really works for me (a highly entertaining question and answer format that borders on bantering). I've even "stolen" it for some powerpoint presentations. It works there too. Even more impressively, the almost "naive" form is used to effectively and efficiently introduce some very deep concepts, culminating with the Y combinator.
ddrake's review
challenging
informative
inspiring
lighthearted
reflective
medium-paced
5.0
I learned so much from this book, even though I would have said before starting that I understand recursion, a bit about lambda calculus, closures, lexical scoping, and so on -- but working through this gave me so much new insight and appreciation into all those topics.
I really like the dialectic, Socratic style -- in some ways, it mirrors what happens when a person reads code and "plays computer", and is really suited to these kind of computer science topics.
I really like the dialectic, Socratic style -- in some ways, it mirrors what happens when a person reads code and "plays computer", and is really suited to these kind of computer science topics.
jamie_toomai's review
3.0
So, it's a bizarre book. It starts out bizarre, it continues to be bizarre throughout, but you get used to it.
It's a computer science text book, but it isn't teaching programming. It isn't even about programming. It's about thinking about computer programs.
On the one hand, I learned a lot about how you would do certain things recursively. On the other hand...why would you in real-world programming?
The Y-combinator stuff was cool. I had heard of it, but didn't really know anything about it. I still don't really get it, but I did write a factorial function in Python with lambdas based on what they taught me. Maybe if I read that chapter one more time I'll really get it. (...I've already read it one more time many times).
It's a computer science text book, but it isn't teaching programming. It isn't even about programming. It's about thinking about computer programs.
On the one hand, I learned a lot about how you would do certain things recursively. On the other hand...why would you in real-world programming?
The Y-combinator stuff was cool. I had heard of it, but didn't really know anything about it. I still don't really get it, but I did write a factorial function in Python with lambdas based on what they taught me. Maybe if I read that chapter one more time I'll really get it. (...I've already read it one more time many times).
albcorp's review
4.0
Thoroughly didactic, and a considerable brain twister, this book and its exercises did a great deal for my programming skills. In particular, it furnishes stepping stones of a craft to decompose computing problems into recursive solutions.
I found the last two chapters fiercely difficult, and cannot say that I truly retained them. However, I greatly enjoyed the opportunity to glimpse deeper mathematical aspects of the lambda calculus.
For anyone wishing to learn a lisp-like, I thorough recommend time with this book, paper and pen, and a lisp interpretter
I found the last two chapters fiercely difficult, and cannot say that I truly retained them. However, I greatly enjoyed the opportunity to glimpse deeper mathematical aspects of the lambda calculus.
For anyone wishing to learn a lisp-like, I thorough recommend time with this book, paper and pen, and a lisp interpretter
zenandroid's review
3.0
This was a decent book.
The QnA format felt very ... wasted, it had such great potential but instead was used just to add bloat and i'm sure a sensible editor would've cut it all out, saving something like 40 pages.
The penultimate chapter was the one i will re-read suite a few times until i internalize its material.
The QnA format felt very ... wasted, it had such great potential but instead was used just to add bloat and i'm sure a sensible editor would've cut it all out, saving something like 40 pages.
The penultimate chapter was the one i will re-read suite a few times until i internalize its material.
tlockney's review
5.0
I gave this a quick read a few years back, but didn't work through all the examples. I'm planning to re-read it, along with it's more recent brethren, in the near future, working through all the exercises along the way.