The Object-Oriented/Functional-Programming symmetry: theory and practice

Gabriel Scherer

Playlists: 'bobkonf2020' videos starting here / audio

Much gets written on the internet about comparisons
between Object-Oriented (OO) and Functional-Programming (FP)
approaches software: which one is going to solve all your
programming problems? If we concentrate on precise, objective
comparisons and relations between the two sides, the
programming-language folklore mentions a symmetry (often
called a “duality”) between object-oriented and
functional-programming styles. More precisely, a symmetry
between program organizations based on class decompositions,
and those based on sum types (also called variant types or
algebraic datatypes). In this talk we propose to revisit this
symmetry, discussing both practical and theoretical