Hi,

(new here)

2007/3/25, Jacques Carette <[EMAIL PROTECTED]>:
Some classes would become even more important: monoid, groupoid,
semi-group, loop (semi-group with identity), etc.  But all of those are,
to the average programmer (and many a mathematician), just as scary as
Monad.

Of course, when you get that general, you start having the problem
that many types can be made into these structures in more than one
way. Even the current Monoid class has that problem, even though it
has some ties to a particular application (the Writer monad and stuff
similar to it -- as reflected in the 'mappend' and 'mconcat' names).

You can have newtype wrappers, but that's at least somewhat annoying :-)

I'd like to see these classes in the standard library, but I'm not
sure at this point whether they are useful enough to have in the
prelude, as long as they're not at least losely to a specific
application (Field -> numbers; Monoid -> collecting results; Monad ->
imperative computations).

- Benja
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to