The list type constructor ([] :: * -> *) is a functor, and if you add the implementations of join/return (or just return and bind) those together make the monad. The value-level list [3,5,8] is just a list :)
On Wed, Jan 27, 2010 at 1:30 PM, Andrew Coppin <andrewcop...@btinternet.com>wrote: > Here's one for you to ponder. > > 7 is a number. 7 is an integer, and integers are numbers. > > 7 is not a field. 7 is an element of [at least one] field, but 7 itself is > not a field. > > 7 is not a group. 7 is a member of the set of integers, but the set of > integers is not a group either. The set of integers form a group when taken > together with the addition operator. (And, actually, forms another, > different, group when taken with the multiplication operator.) > > Now, here's the question: Is is correct to say that [3, 5, 8] is a monad? > Is it correct to say that lists are a monad? Or would it be more correct to > say that lists "form" a monad? > > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe >
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe