Lambda Calculus isn’t just a fancy word: it defines our software, our numbers and perhaps even reality itself.
Concepts of functional programming is made much harder when the developer is also trying to learn a new language, like Haskell, Scala or Clojure at the same time. With that in mind, we focus on relating functional concepts in a common language: Java.
With such a conspicuous title you'd think this was meant to be ironic or a post-modern arthouse diatribe. Nope, I'm just asking you to literally think differently, because the future depends on it. Non-ironic drama intended.
So You Want to Learn Java?
Java is a great software development language. Used by millions of people daily, it's incredibly popular being the the primary language of businesses, Android software development and Minecraft. Java has excellent tool support, offering integrated debugging and many many libraries that can solve many many problems.
Functional Game Development
While functional programming is making huge inroads in areas like web development and distributed computing, there is one kind of software where its use is still rare: games. The vast majority of games today, from the small indie variety up to triple-A titles, are written in a mostly standard way, filled with mutable variables and large object hierarchies.
Bare Metal Functional Programming With Symbolics
The Symbolic's Lisp Machine is an amazing and unique computer designed with one thing in mind: run functional programs as fast as possible using hardware specifically designed for the language!