[Haskell] Extensible records: Static duck typing
Barney Hilken
b.hilken at ntlworld.com
Wed Feb 6 13:02:31 EST 2008
> 2. List the possible features that “records” might mean. For example:
>
> · Anonymous records as a type. So {x::Int, y::Bool} is a
> type. (In Haskell as it stands, records are always associated with
> a named data type.
>
> · Polymorphic field access. r.x accesses a field in any
> record with field x, not just one record type.
>
> · Polymorphic extension
>
> · Record concatenation
>
> · Are labels first-class?
>
> · etc
>
> Give examples of why each is useful. Simply writing down these
> features in a clear way would be a useful exercise. Probably some
> are “must have” for some people, but others might be optional.
>
This is what I was trying to do with the wiki page. I stopped because
the only other contributor decided he could no longer contribute, and
I felt I was talking to myself. If we want to be rational about the
design, we need real examples to demonstrate what is genuinely useful,
and I don't have that many of them.
Barney.
More information about the Haskell
mailing list