Keith Wansbrough writes:
> > class Subtype sub super where
> > up :: sub -> super
> > down :: super -> Maybe sub
>
> See the extensible union types of [Sheng Liang, Paul Hudak and Mark
> Jones: Monad Transformers and Modular Interpreters]
>
> From the abstract:
>
> class Subtype sub super where
> up :: sub -> super
> down :: super -> Maybe sub
See the extensible union types of
@InProceedings{
Liang*95:Monad,
author="Sheng Liang and Paul Hudak and Mark Jones",
title="Monad Transformers and Modular Interpreters",
crossre