[Haskell-cafe] The container problem
David Menendez
dave at zednenem.com
Fri Sep 26 18:12:04 EDT 2008
On Fri, Sep 26, 2008 at 5:37 PM, Andrew Coppin
<andrewcoppin at btinternet.com> wrote:
>
> As already noted, Data.Set *should* be a Monad, but can't be. The type
> system won't allow it. (And I know I'm not the first person to notice
> this...)
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.
--
Dave Menendez <dave at zednenem.com>
<http://www.eyrie.org/~zednenem/>
More information about the Haskell-Cafe
mailing list