Category Theory for the Working Hacker by Philip Wadler
Video Statistics and Information
Channel: Lambda World
Views: 77,786
Rating: 4.8819914 out of 5
Keywords: Philip Wadler, Lambda Man, Lambda World, functional programming, tech talks, technology, coding, programming
Id: V10hzjgoklA
Channel Id: undefined
Length: 50min 52sec (3052 seconds)
Published: Fri Nov 11 2016
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.
As much as prof. Wadler is a great presenter and scientist, I disliked this particular presentation: it does not convey the power of Category Theory (arguably this is very hard to do in the context of such a short lecture), and instead superficially presented some constructs that seem to just be conjured out of thin air, with little to no application.
To really appreciate Category Theory as a programmer, the learning curve is unfortunately very steep. I would advise Bartosz Milewski's great series of lectures on the topic, as they arguably do a much better job at explaining some of the connections.
Still, it will be years before we learn how to explain Category Theory to programmers in a way that is quickly useful. Given that the most powerful uses usually involve easier ways to formulate abstract concepts and their composition (I was recently blown away by the beauty of building monads out of adjunctions!), and that understanding the immense power of constructs such as monads is complex in itself, this looks like a challenging struggle. Moreover, we should start showing monads as a tool to solve real world problems (shameless plug: https://medium.com/@giuseppemaggiore/type-safe-monads-and-react-499b4a2f56d7) instead of a tool to build parsers, then maybe we can turn more people to the light side.
A couple of minor wibbles coming from working with slides that are unfortunately not typechecked:
At 38:15 or so he talks about distributive categories, but type he shows is a little wrong. It should be:
Notice how the * and + are flipped from his presentation.
At 40:50 or so he says "exponential is left adjoint to product" to be pithy, but its actually right adjoint.
Very minor issues, but I figured I should mention them in case someone else was trying to follow along and do all the proofs as they go.
I have my own theory about professors who presume to know anything about working programmers/hackers as a category.
I hope to find the time to get a basic working knowledge of category theory. I actually found programming extremely dull until I took a class in abstract algebra and they explained to me what functions and operations and algebraic structures actually were. And I really enjoyed learning functional programming, even though I prefer objects it's influence how I program a lot, for the better.
Did they get product types (aka pairs) in Java 9 now?