Saturday, January 2, 2010

Paul Graham's "The Roots of Lisp"

Paul Graham's The Roots of Lisp, a cogent essay dealing with John McCarthy's astonishing 1960's paper which introduced the LISP language, and more importantly, the functional model of programing.

Graham stresses his essay is more important today than ever, given how more languages have moved (albeit in a piecemeal fashion) towards the LISP model. Working with seven primitive operators, the paper shows how the entire language is built. Most importantly, the paper shows the LISP trademark, how to write the language in itself.

An interesting aspect for Scheme programmers like myself is the discussion of dynamic versus lexical scoping.

Reading the paper reminds us of why functional languages, especially LISP based ones, aren't just the best for expressing algorithms, but are the most elegant models of programming since the are easily transcribed in mathematical notation.

I can't recommend The Roots of Lisp enough. The paper is available for free download on Paul Graham's site.

No comments: