F# Type Providers
Introduced in F Sharp 3.0, Type Providers are components that provide types, properties, and methods to an application to facilitate information rich programming. In other words a type provider automatically exposes the types which represent provider’s data structures.
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.
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.
Practical Functional Programming: The Virtues of Laziness
When you're new to Functional Programming, or struggling to learn it after coming from an Object Oriented background, you're likely to ask: "This is so different, what's the practical aspect?"
Don't Fear the Monad
Functional programming is increasing in popularity these days given the inherent problems with shared mutable state that is rife in the imperative world. As we march on to a world of multi and many-core chipsets, software engineering must evolve to better equip software engineers with the tools to exploit the vast power of multiple core processors as it won't come for free as it did in the recent past which was predictably based on Moore's law.
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!