Tuesday 4th December, 2012
11:35am to 12:25pm
Proponents of functional programming tout its many benefits, most of which are available only within a particular process, or afforded by a particular programming language feature. Anything outside of that is considered I/O, dangerous and difficult to reason about. But real systems almost always cross process and language boundaries, and most require, crucially, a very gnarly bit of shared state - a database. In this talk we will examine how Datomic renders the database into that most prized and easy-to-reason-about construct, a value, and makes it available to multiple processes in multiple languages, functional and not.
Along the way, we'll discuss the importance of immutability and time in representing information, the reification of process, and the mechanisms of durable persistent data structures. No knowledge of functional programming is required.
Talk objectives: To make people rethink fundamentals of database architecture, in light of the principles of functional programming.
Target audience: Anyone who builds systems involving databases.
Sign in to add slides, notes or videos to this session