To understand what we are dealing with when we have ADT, one needs to get a bit deeper into Lawvere theories. Then things become clearer. To see how ADT are models of Lawvere theories, one needs some (not very deep) dive into categories (and free algebras). In this talk I'll try to explain all this in an as clear way as possible.

Algebraic Data Types, Categorically
- PDT
functional
USSR: until 1991. Mathematician by education, programmer by vocation. Russia: until 1998. Founder, freelancer, programmer. Bay Area: since 1998. Programmed anything. Borland, Google, Salesforce, and a bunch of nice small things. Google keyboard was my 20%. In 2008 fell in love with Scala. But still learning stuff.