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.




Reply via email to