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.
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!
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.
Linguistics and Compilers
Compilers are tools typically used to create binary we call software. Kenneth Miller has some interesting thoughts on extending the metaphor (and tools) to both human and programming languages.
Parsing Text with a Virtual Machine
As the saying goes, all the good ideas in computer science came from the 1970s. We'll explore a new library for parsing text that calls upon an old, unconventional approach: compiling parsers to custom bytecode and then running it through an interpreter. Along the way, we'll learn about how PEGs fit a sweet spot between regular expressions and heavier parsers, and how Clojure is an ideal language for writing simple compilers.