Hans Aberg included in his mail:
> class Monad m where
> map :: (a -> b) -> (f a -> f b) -- Functor
> return :: a -> m a -- Unit
> (>>=) :: m a -> (a -> m b) -> m b -- Kleisli multiplication
> or join :: m(m a) -> m a -- Monoid multiplication
> -- Some axioms are missing here.
I'm really worried about whether ordinary mortals (or at any rate
programmers) will not be put off by these terms. (Not your fault Hans).
It's all very well for mathematicians. Do we have to be mathematicians to
make use of monoidal programming ideas?
_____
/ /\
Tony Davie Computer Science / / \
Tel: +44 1334 463257 St.Andrews University / / \
Fax: +44 1334 463278 North Haugh / / /\ \
[EMAIL PROTECTED] St.Andrews / / / \ \
Scotland / / /\ \ \
KY16 9SS / / / \ \ \
/ /__/____\ \ \
/ \ \ \
http://www.dcs.st-and.ac.uk/~ad/Home.html /________________\ \ \
\ \ \
\_____________________\ /
In theory, there is no difference between theory and practice, but
in practice there is a great deal of difference.