University of Pennsylvania Department of Computer and Information Science Technical Report
Final Published Version
Haskell, as embodied by version 7.10.1 of the Glasgow Haskell Compiler (GHC), supports reasoning about equality among types, via generalized algebraic datatypes (GADTs) and type families. However, these features are not available among the kinds that clas- sify the types. Motivated by a concrete example of how kind equali- ties can help programmers today, this paper presents the challenges and solutions encountered in integrating kind equalities into GHC, an industrial-strength compiler. The challenges addressed here all surround the many notions of type equality that exist in GHC to- day, and in particular around GHC’s role mechanism. These many different relations on types complicate the theory considerably
An update of GHC supporting reasoning about kind equalities is a key part of this work.
R. A. Eisenberg. An Overabundance of Equality: Implementing Kind Equalities into Haskell. University of Pennsylvania Technical Report MS-CIS-15-10, 2015.