Original-Via: uk.ac.nsf; Fri, 29 Nov 91 15:38:59 GMT
Here are some things I would like to see in the next version
of the Report:
(a) A coalesced diagram over the subclass inclusions between all
standard classes (fig. 4, p. 30) and all numeric classes
(fig. 7, p. 55). Below the classes there should be examples
of typical (sorry) types in the class; for instance, below
Floating, the types Complex Float and Complex Double should
appear (beside the RealFloat subclass).
For this diagram to make more sense, I would like Real to
be made a subclass of Enum, and Integral a subclass of Ix,
as discussed earlier on this list.
(b) Some updates to the index, as follows:
+,... add "see also n+k pattern" (unless they are thrown out);
Binary, add "for efficent I/O, 68" (this is the only page that
explains why Binary exists);
add "hiding, 44-45, 49-50" (the whole entry is missing);
lex, 110, add "139" (this is where lex is specified).
(c) Page 49 says: "The PreludeCore module contains all the algebraic
datatypes, type synonyms, classes and instance declarations specified
by the standard prelude". This seems a good goal, but as Lennart A.
pointed out, it is not true yet: PreludeText defines the type
synonyms ReadS and ShowS and the class declaration Text, the
PreludeIO defines three algebraic types and six type synonyms, etc.
A related issue: it is not obvious how to relate the two modules
in section 5.4 (PreludeCore and Prelude) to the nine
modules in appendices A - A.8. Two of them are called
Prelude and PreludeCore, but it takes some time to figure out
if the other seven are parts of Prelude or of PreludeCore.
I want this written explicitly somewhere.
Well, that should be all for today,
-- Mikael R.
Oh, while I am on the air: I think n+k patterns look pretty for natural
numbers, but confusing for integers. Let's abstain from them.