First-Class Type Classes

Abstract : Type Classes have met a large success in Haskell and Isabelle, as a solution for sharing notations by overloading and for specifying with abstract structures by quantification on contexts. However, both systems are limited by second-class implementations of these con- structs, and these limitations are only overcomed by ad-hoc extensions to the respective systems. We propose an embedding of type classes into a dependent type theory that is first-class and supports some of the most popular extensions right away. The implementation is correspondingly cheap, general and integrates well inside the system, as we have experimented in Coq. We show how it can be used to help structured programming and proving by way of examples.
Document type :
Journal articles
Liste complète des métadonnées
Contributor : Matthieu Sozeau <>
Submitted on : Tuesday, October 4, 2011 - 1:51:45 PM
Last modification on : Wednesday, December 19, 2018 - 1:08:13 PM

Links full text




Matthieu Sozeau, Oury Nicolas. First-Class Type Classes. Lecture Notes in Computer Science, Springer, 2008, ⟨10.1007/978-3-540-71067-7_23⟩. ⟨inria-00628864⟩



Record views