Why Algebraic Data Types Are Important

Strong static typing detects a lot of bugs at compile time, so why would anyone prefer to program in JavaScript or Python? The main reason is that type systems can be extremely complex, often with byzantine typing rules (C++ comes to mind). This makes generic programming a truly dark art. Interestingly, the theory behind types is relatively simple – a fact exploited by functional languages like Haskell or ML. I’ll discuss elements of type theory and its connection to category theory and logic.


code::dive 2018


Bartosz Milewski


Conference Organizer provided Coding Tech with the permission to republish the code::dive talks.