data / type / newtype:
i'd like to have these choices
type T1 = record C1 .. | C2 ..
type T2 = T1
type T3 = new T2
with T2 identical to T1,
and T3 being an identical copy of T2 (but different from T2)
inheriting all its constructors and operations.
(at the moment, type .. = record .. is written as data .. = ..
but i feel the above is clearer.)
so that the usual example
type Apples = new Int; type Oranges = new Int
where you couldn't add Apples and Oranges.
of course then the Int constructors would be overloaded,
which had to be disambiguated (by annotations, see previous suggestion).
this could interfere with the overloading that comes from the
numeric classes.
--
Dr Johannes Waldmann Institut fur Informatik Universitat Leipzig
[EMAIL PROTECTED] http://www.informatik.uni-leipzig.de/~joe/
PF 920, D-04009 Leipzig, Germany Tel/Fax (+49) 341 97 32204 / 32209