/row-polymorphism

Example row-polymorphism implementations

Primary LanguageHaskell

row-polymorphism

Example row-polymorphism implementations.

  • AlgorithmW_Records.hs - an implementation of Daan Leijen's "Extensible Records with Scoped Labels".
  • AlgorithmW_ConstrainedRows.hs - an implementation of extensible records and variants using type variable constraints to prevent repeated labels.
  • AlgorithmW_Effects.hs - an implementation of row-polymorphic effect types using the above constrained-rows implementation.

NOTE:

For a more complete example of a language with row-polymorphism, checkout the Expresso project: https://github.com/willtim/Expresso