7pm: Terminator: Haskell — Programming a Robot to Seek Humans, by Noam Lewis.
This talk, for beginning-to-intermediate developers, will explore computer vision and robotics in Haskell with a practical focus, using a small robotics project as an example. We'll talk a bit about FRP, while deliberately avoiding a full-blown implementation. Along the way we'll discuss how to interface with external libraries, taking a quick look at FFI and the challenge of wrapping an external API in a more "Haskellish" one.
8pm: A Gentle Introduction to Category Theory, by Thomas Lawler
Consider the Monoid typeclass, which generalizes a common pattern of "things that can be smashed together". All a type needs to admit a Monoid instance is an associative binary operation and a special identity element that doesn't change anything it's "smashed" with.
But not everything is a monoid—sometimes "smashing" two things might not make sense (e.g., multiplying arbitrary matrices, or composing functions). Much like we can abstract out the properties of individual monoids and write generic code that applies to any monoid, we'd like to abstract out the properties of these "almost-monoids". Thankfully, mathematicians have already done this for us, and the result is category theory.
Haskell programmers are often encouraged to learn about category theory. But category-theory a-la-Haskell is a particular, weird corner of the category theory world. This talk, aimed at Haskell programmers, will not be about category theory just for Haskell, but category theory in general, from the ground up. The goal is to be as accessible as possible, with many simple examples, and only a modicum of abstract nonsense.