Library hierarchy, contd.

Dylan Thurston
Thu, 24 May 2001 08:32:59 -0400

On Wed, May 23, 2001 at 05:43:01PM +0100, Simon Marlow wrote:
> Data
>     Complex             -- H98

This seems decidedly out of place here: complex numbers are not
interesting as a data structure, but as a mathematical construct.
(I.e., the instance of Num is the interesting part.)

Part of the motivation for a "Mathematics" hierarchy is to have a
natural place where, e.g., "Complex" would belong.

> Data
>     Int

This seems somewhat less out of place, since, IIRC, the functions in
this library deal with low-level representation.

> Algebra
>     DomainConstructor   -- formerly DoCon
>     Geometric           -- formerly BasGeomAlg

> Numeric			-- exports std. H98 numeric type classes
>     DSP
>         FastFourierTransform
>         Noise
>         Oscillator

You make a good point that these current libraries do not fit all that
well under "Mathematics".  Maybe we should keep "Numeric" and create a new
"Mathematics" hierarchy which would contain:

- the std. H98 classes.  [Incidentally, I agree with Sergio
  Mechvelliani that the "Num" class is badly named.  I would vastly
  prefer to call the class "Ring".]
- the Complex class
- Mechvelliani's classes
- arbitrary precision arithmetic
- matrix classes

Maybe "Computational" would be a better name than "Numeric"?

	Dylan Thurston