3 ms·
It would be great if one of our resident HN functional geeks could give a short review of the book and why it and lambda are still relevant (more relevant?) now
by mmaunder 15y ago
It would be great if one of our resident HN functional geeks could give a short review of the book and why it and lambda are still relevant (more relevant?) now.
- dons 15y agoClassic text on implementing typed Haskell/ML-like languages circa late 80s. Many of the terms and concepts remain relevant, though state of the art of runtime systems has advanced a lot.
- silentbicycle 15y agoAmong other things, it has a good chapter on implementing pattern matching efficiently.
- sb 15y agoIn addition to the other comments (at the time of this writing: silentbicycle and dons), I would say: - Regarding the importance of the book: it's discussion of the G-machine (probably also interesting is another paper by SPJ, "The spineless tagless G-machine") is very comprehensive and textbook style. I think this is very important to study/compare the other model of virtual machines used for implementing functional programming languages, viz. the SECD machine (named after the four stacks necessary, Stack, Environment, Code, Dump.) The book I first read about the SECD machine is Peter Kogge's "The Architecture of Symbolic Computers" and I recommend it dearly. - Regarding the use of lambda calculus: It's not just the equivalent of a Turing machine, but much more fundamental in the theory of implementing programming languages: Aside of the eager/lazy evaluation of functional programming languages (corresponding to applicative and normal order evaluation of terms), the typed lambda calculus for instance is fundamental for studying type systems, one of the more important research areas of the last decade. Besides it is also the basis of LISP (eval and apply functions.)