11 Oct
2001
11 Oct
'01
6:20 a.m.
At 2001-10-10 03:59, Marcin 'Qrczak' Kowalczyk wrote:
We need some type T such that it's possible to define a family of functions for arbitrary choices of A: upA :: A -> T downA :: T -> Maybe A satisfying downA (upA a) = Just a. We want to choose the type for T before deciding the exact set of types for A.
I'm convinced extensible datatypes are the cleanest and most in-spirit extenstion to Haskell to solve this. data T = _; ... data T |= MkAT A; upA = MkAT; downA (MkAT a) = Just a; downA _ = Nothing; -- Ashley Yakeley, Seattle WA