
Malcolm Wallace wrote (on 13-03-01 15:00 +0000):
I've had a hard think about what remains in Lang now. For these:
Monad Exception Generics Dynamic Unique
and also the following that aren't in Lang:
Concurrent Parallel
as far as I can see, the common unifying concept is that of "Control Structure" - or the closest that functional languages get to it.
I generally agree with Marcin's categorizing criteria, but I don't think there is any a priori reason to expect that these modules should be related in _any_ way other than by the fact that they are extensions (except Monad and Unique). Maybe there is something Control-like about them, but honestly it seems forced to me. For example, I think Dynamic and Generics (again: why is only one plural?!) are sort of type related, so I might argue with equal confidence that they belong in a Types subtree. If you really want to be faithful to Marcin's scheme, then they should probably go at the top-level, but I don't think that would be a good idea. Maybe we should just accept that they are only really related by the fact that they are extensions and put them in an Extensions or Miscellaneous subtree or something. These things are too abstract and complex for us to expect to find a reasonable place for them within a simple tree structure. BTW, I think Monad should go in Data.Structure. And Unique too, if it is the GHC unique-name module I'm thinking of. -- Frank Atanassow, Information & Computing Sciences, Utrecht University Padualaan 14, PO Box 80.089, 3508 TB Utrecht, Netherlands Tel +31 (030) 253-3261 Fax +31 (030) 251-379