The dashing duo of eval/apply 1 and learn generously 2 pervade all that I do 3.

I blog here and write the occasional newsletter 4. Pet topics include systems, complexity, organisation design, architecture, and functional programming.

Now is a year of total reinvention; body, mind, and work. And I'm intent on making demo software for fun (Also money. It's fun to have money.).


  1. eval/apply is wicked cool… Circa 1960, A.I. pioneer John McCarthy gave us eval and apply, two mutually recursive LISP functions that encode the kernel of all of programming. Like yin/yang ☯, they contain each other. And they evoke other nonduals to live by; diffuse/focus, abstract/reify, design/develop.

    Stuart Feldman: If nothing else, Lisp was carefully defined in terms of Lisp.

    Alan Kay: Yes, that was the big revelation to me when I was in graduate school—when I finally understood that the half page of code on the bottom of page 13 of the Lisp 1.5 manual was Lisp in itself. These were “Maxwell’s Equations of Software!” This is the whole world of programming in a few lines that I can put my hand over.

    ↩︎
  2. Learn generously is my favourite self-directive coined by the gentlepeople at my favourite programmers' community, the Recurse Center. One stands on the shoulders of giants. One has received much generosity. One benefits greatly from contributions to the public commons. One tries to give back in one's meager ways.

    ↩︎
  3. eval/apply and learn generously pervade all that I think, teach, speak, organise, share, code.↩︎

  4. If you fancy The Rather Occasional eval/apply Dispatch, get yours here…

    Or just write to me. I love slow-mo, thoughtful email banter.↩︎