Build Your Own Lisp
K**N
Gets complicated really fast.
I've been programming for over 30 years, but never learned C or Lisp. This book seemed like it would offer the perfect opportunity. The first 40 pages were great. Then I got to the section on Languages, specifically Parser Combinators, Coding Grammars and Natural Grammars. I got lost pretty quickly. And then in the Bonus Marks at the end of the section the author states "Some of the bonus task (sic) also might require cyclic or recursive grammar structures, so don't worry if you have to use these!". These terms have never even been explained. So that's as far as I've gotten. Not sure if I will continue with the remainder of the book.
A**5
for most people fine, but if you are really picky you may ...
Uses a prebuilt parser combinator with referenced source, for most people fine, but if you are really picky you may need to pick up an additional book.
G**G
Super Book
This book walks thru writing the C code to produce a REPL that evaluates LISP expressions. The code works, the explanations clearly explain the code and what it accomplishes in the program. It is easy to go through this book quickly because everything just works. I'm a Java programmer just beginning to learn C and I could not be happier with this purchase.
D**E
Fantastic!
Absolutely fantastic! This will really take your programming skills to another level! It's not a beginner's book but someone with a basic foundation in programming can work through this book and learn a great deal. Daniel Holden is a fantastic and entertaining author (which is sometimes rare in the tech writing field) that clearly presents the subject matter in a great manner. I highly recommend this book to anyone who wants to delve into C or learn a thing about Lisps (or both). Kudos!
D**T
Really disappointed by the pre-built parser combinator
Really disappointed by the pre-built parser combinator. Overall I felt the book is too shallow and doesn't really dive too deeply into any of the concepts it covers. Over 75% of the code is already done for you in the form of the parser combinator(3500+ lines of code) vs the ~1000 you write. The book is available for free on the website from the author, I suggest looking it over before making the purchase.
Y**Y
Really nice read. As an exercise
Really nice read. As an exercise, rewriting the compiler with infix notation instead of polish seems like a fun thing to try.
A**C
a true experience of joyful programming multiple times over
As a programmer who learned in high level languages, this book was a perfect exercise to dip my feet into C. I've always wanted to write my own programming language some day, and this book definitely gave me an idea about how one would do that, and some of the considerations I'd have to make if I did. During the course of this book I encountered my first segfault, and learned a lot about debugging and memory management as a side effect. This book won't teach you everything, and a lot of the parsing is abstracted away, but the ups and downs of the bugs along the way coupled with the absolute joy of getting things right, and trying out the language, and the understanding that I built along the way, and all the 'a-ha' moments, was excellent, and I can't recommend it highly enough for new programmers.The author himself also replied promptly when I found what I felt to be an error in his code, which was the case, and he helped me figure out what to do. It turned out that there was a bug in the version of the source that I had downloaded, and I just had to update the mpc.c file to fix it.
M**T
I had been beating my head against what made Lisps ...
I had been beating my head against what made Lisps special for years. I could sense there was something there waiting to be discovered. Writing my own with the help of this book finally gave me the "Ah Ha!" moment I had been looking for.
M**S
great book, walks through the implementation in detail
This is a great book, it walks through the implementation in detail, useful for learning or refresher on C ; and explains the core of LISP very well.
J**Z
Concrete and simple to follow up
I think is one really nice way to understand about interpreters and language processors,is nice and simple to follow up, is really good.
Trustpilot
5 days ago
2 weeks ago