Interface types are a useful concept in object-oriented programming languages like Java or C#. A clean programming style advocates relying on interfaces without revealing their implementation. Haskell's type classes provide a closely related facility for stating an interface separately from its implementation. However, there are situations in which no simple mechanism exists to hide the identity of the implementation type of a type class. This work provides such a mechanism through the integration of lightweight interface types into Haskell. The extension is non-intrusive as no additional syntax is needed and no existing programs are affected. The implementation extends the treatment of higher-rank polymorphism in production Haskell compilers. © 2008 Springer Berlin Heidelberg.
CITATION STYLE
Thiemann, P., & Wehr, S. (2008). Interface types for haskell. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 5356 LNCS, pp. 256–272). Springer Verlag. https://doi.org/10.1007/978-3-540-89330-1_19
Mendeley helps you to discover research relevant for your work.