While the book offers some genuinely interesting concepts and useful code samples, the writing itself is quite a struggle to get through. The prose is, frankly, awful and detracts significantly from the otherwise good material. It's a shame because the core ideas are solid, but the presentation makes it a chore to read.
Lisp truly unlocks a world of possibilities for programming. It's a language where you can achieve almost anything you set your mind to.
This book dives deep into advanced Lisp macro programming, so much so that a staggering 99% of its content is likely beyond practical application for most daily tasks. Beyond the technical density, the author's persistent, condescending lectures against anything outside the Lisp sphere quickly become tiresome. Approach this one with caution, and a healthy dose of skepticism regarding its real-world utility.
This feels like a direct continuation of Practical Common Lisp, specifically volume 2. It's a great follow-up if you're still trying to grasp the hype around Common Lisp and its macros after finishing the first book. I was pleasantly surprised to discover that some of the macros detailed in 'Let Over Lambda' are actually built-in features in Clojure.
This book is certainly opinionated, but it's also packed with valuable information. It's a compelling read that doesn't shy away from taking a stance.
This book offers a fascinating exploration of metaprogramming, particularly focusing on Lisp macros. It really sparked my curiosity about features like macros, which are well-supported in many popular languages and can significantly boost productivity and capability.
This reviewer found the argument about Scheme's single namespace being a flaw for macro construction to be unconvincing. While acknowledging Scheme as an otherwise excellent language, the critique presented in Chapter 3 doesn't hold up to scrutiny. The author seems to dismiss a core feature without a thorough exploration of its implications.
This is hands-down the best macro book I've encountered, and if you're dabbling in any Lisp dialect, you absolutely need to pick it up. While the author's discussion of "duality of syntax" in section 3.7 felt a bit vague, leaving me wondering about the precise meaning and its connection to referential transparency, the overall value of the text remains undeniable. For those coming from Clojure, I'd strongly recommend getting acquainted with some Common Lisp as well; it'll significantly deepen your understanding of the concepts presented here.
This book is truly excellent and definitely met my expectations. However, I found the benchmark comparing `sortf` and CL's sort on page 280 to be misleading. The author neglected to account for the time spent creating the function used in the benchmark, which appears to involve an expensive call to `build-batcher-sn`. While this specialized sort has its uses for fixed-size datasets where function creation can be amortized, the `sortf` macro implies creating the lambda form for single use, which could be a poor choice.
This book dives deep into metaprogramming with Lisp macros, and while it's certainly the nerdiest read I've encountered lately, I found it surprisingly enjoyable. Once the concepts of quoting and backquoting clicked, the text became remarkably accessible, thanks to its well-chosen examples. It's a fun exploration of metaprogramming, even if you won't be churning out Lisp code immediately, and the humor, often poking fun at Scheme, adds a nice touch. The appendix on Emacs vs. Vi was a predictable but amusing read, especially considering the history of lexical scope in elisp.
This book failed to provide the paradigm shift I was hoping for to truly understand Lisp. While acknowledging Lisp's historical significance, I found its syntax awkward and outdated compared to modern languages. The author's strong advocacy for macros and a non-functional style felt unconvincing, especially when compared to more elegant solutions found in languages like Haskell. Ultimately, our differing philosophies on language design and control made it difficult to connect with the author's perspective.
This book is an incredible exploration of Common Lisp macros, really showcasing how Doug breaks down complex concepts. He dives into advanced macro types that enable surprisingly elegant solutions for intricate problems. The final chapter, with its Forth interpreter implementation, is absolutely mind-blowing! While it's definitely not for beginners to macros, it's an essential read for anyone keen on understanding the power and depth of sophisticated Lisp programming.
This book is an absolute gem for anyone interested in macro programming. While the author's fervor for Lisp supremacy might come across as a bit intense, it's easily overlooked given the depth and practicality of the content. You'll find well-explained examples that guide you through building your own macro toolset, culminating in a fascinating Lisp-to-Forth-to-Lisp translator that truly showcases the power of the subject.
This book was an absolute revelation, truly an eye-opener and a mind-bender. I particularly enjoyed the sections on Pandoric Macros, Compiler Macros, and my personal favorite, 'Lisp Moving Forth Moving Lisp.' While the author is quite opinionated and set in their ways, approaching the text with an open mind will undoubtedly lead to a thoroughly enjoyable reading experience.
This book dives deep into macro programming in Lisp, covering everything from scope and closures to advanced topics like extending the language and parser, even macros that build macros. While the content is undeniably interesting and packed with valuable information, the author's fervent advocacy for Common Lisp's superiority became quite tiresome. It's a shame because the technical material itself is quite impressive.
This book dives deep into LISP macros, and while it's an absolute must-read for anyone serious about the topic, you'll need to take your time with it. It's the kind of text that rewards slow, deliberate reading, and I anticipate returning to its pages often for deeper understanding.
Prepare for your mind to be utterly blown by this incredible book. It's an experience you absolutely have to embrace.