David Menendez wrote:

I wouldn't say that. It's important to remember that Haskell class
Monad does not, and can not, represent *all* monads, only (strong)
monads built on a functor from the category of Haskell types and
functions to itself.

Data.Set is a functor from the category of Haskell types *with
decidable ordering* and *order-preserving* functions to itself. That's
not the same category, although it is closely related.

I nominate this post for the September 2008 Most Incomprehensible Cafe Post award! :-D

Seriously, that sounded like gibberish. (But then, you're talking to somebody who can't figure out the difference between a set and a class, so...)

All I know is that sometimes I write stuff in the list monad when the result really ought to be *sets*, not lists, because

1. there is no senamically important ordering

2. there should be no duplicates

But Haskell's type system forbids me. (It also forbids me from making Set into a Functor, actually... so no fmap for you!)



PS. Text is unpredictable, so just in case... If this post sounds like a flame, it isn't meant to be. ;-)

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

Reply via email to