Elaboration on functional dependencies: functional dependencies are dead, long live functional dependencies!
Abstract
Functional dependencies are a popular extension to Haskell's type-class system because they provide fine-grained control over type inference, resolve ambiguities and even enable type-level computations.
DOI 10.1145/3122955.3122966