January 29, 2006

I’ve been meaning to write about “Higher-Order Perl” for a couple of weeks now. I kept coming across concepts that I wasn’t able to find a good reference for: currying, memoization, higher-order functions, lexing and parsing (how they really work), etc. I happened to be in a bookstore and out of curiosity picked up Mark Jason Dominus’, “Higher-Order Perl” and started skimming and it’s everything that I’ve been looking for to explain those (and many other) concepts. The writing is very accessible and the Perl has only thrown me a couple of times (Andy Lester has been kind enough to help me out when this happens). The chapters on conversion from recursive to iterative solutions is especially nice given my interest in Ruby and the chapter on lexing and parsing is fantastic — having read through it a couple of times, I’ve picked up a text on compiler design and writing that I’ve owned for a couple of years and am able to get through it now.
I highly recommend this book and would gladly trade 35% of the technical books that I own for it.