Generic programming of all kinds

Alejandro Serrano, V. Cacciari Miraldo

    Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

    Abstract

    Datatype-generic programming is a widely used technique to define functions that work regularly over a class of datatypes. Examples include deriving serialization of data, equality or even functoriality. The state-of-the-art of generic programming still lacks handling GADTs, multiple type variables, and some other features. This paper exploits modern GHC extensions, including <pre>TypeInType</pre>, to handle arbitrary number of type variables, constraints, and existentials. We also provide an Agda model of our construction that does not require Russel’s paradox, proving the construction is consistent.
    Original languageEnglish
    Title of host publicationProceedings of the 11th ACM SIGPLAN International Symposium on Haskell
    PublisherAssociation for Computing Machinery
    Pages41-54
    Number of pages14
    ISBN (Electronic)9781450349116
    ISBN (Print)978-1-4503-5835-4
    DOIs
    Publication statusPublished - 17 Sept 2018

    Keywords

    • Generic programming
    • Haskell

    Fingerprint

    Dive into the research topics of 'Generic programming of all kinds'. Together they form a unique fingerprint.

    Cite this