This weekend at the PHPBenelux 2015 conference I went to a session about higher order programming by Mathias Verraes. Higher-order programming is a style of programming that uses functions as values.

During the session Mathias demonstrated his Lamdalicious library. This library brings the principles of LISP to PHP.  The talk was very fast paced and everything was live coded. PHP was misused to the fullest: global variables, error suppression, ... and there was lots of recursion going on.  Basically he was constructing another language in PHP. During the talk there were lots of ooohhss and aaahhhss in the room, so I suspect I was not the only one enjoying it.

If you are intrigued by this, be sure to read his blog post on the subject. The blog post is essentially the written down version of the talk.

You'll never use any of this code in production, but that's not the goal of the library. Like when doing code katas, the train of thought is much more important than the result.

Here's another wonderful blog post.