Screwtape

Screwtape at

I forget where I found it, but somebody pointed me to a YouTube playlist called "Category Theory for Programmers", and I'm about half-way through it (up to the end of lecture 5.2, Algebraic Data Types).

Having dabbled in Rust and read some blog-posts about Haskell, I already knew some of this stuff (like the existence of sum and product types, or Void and unit), but having them all described with all the connections between them is kind of blowing my mind. For example, I knew algebraic data types were "algebraic" because they're a bit like "addition" and "multiplication", but the video pulls out a whole bunch of high-school algebra, translates it into data-type notation and shows that it not just works, but that it's actually useful things a programmer would recognise.

It's a long series of videos—it seems like a university professor recorded an entire semester's worth of lectures—but I'm more than happy to have spent the time to watch them on my Christmas holidays.

Charles Stanhope, der.hans, Diane Trout, joeyh likes this.

der.hans shared this.

I watched several of these on the plane, up to 2.2 Monomorphisms & simple types. The first talk is some nice philosophy, and the subsequent ones make category theory seem easier than I expected. Perhaps category theory is like monads that way?

joeyh at 2017-01-12T02:04:28Z