A small (yet Turing-equivalent) language
The easiest programming language to implement is a minimalist, higher-order functional programming language known as the lambda calculus.
The lambda calculus actually lives at the core of all the major functional languages--Haskell, Scheme and ML--but it also lives inside JavaScript, Python and Ruby. It's even hiding inside Java, if you know where to find it.
A brief history
Alonzo Church developed the lambda calculus in 1929.
Back then, it wasn't called a programming language because there were no computers; there wasn't anything to "program."
It was really just a mathematical notation for reasoning about functions.
Fortunately, Alonzo Church had a Ph.D. student named Alan Turing.
Alan Turing defined the Turing machine, which became the first accepted definition of a general-purpose computer.
It was soon discovered that the lambda calculus and the Turing machine were equivalent: any function you could describe with the lambda calculus could be implemented on a Turing machine, and any function you could implement on a Turing machine could be described in the lambda calculus.
... continue reading