On Mon, Mar 30, 2009 at 12:40 PM, Jeremy Shaw <[email protected]> wrote:
> At Mon, 30 Mar 2009 20:29:14 +0100, > Andrew Coppin wrote: > > > > Maybe I'm just being blind here, but I don't see a monad transformer (or > > even a monad) in the standard libraries for producing "unique" values. > > Have I missed something? > > There is Data.Unique > > http://www.haskell.org/ghc/docs/latest/html/libraries/base/Data-Unique.html > > Not sure if that is suitable for your needs. Obviously it doesn't do > everything that one might desire. > > > Related, I don't see a monad for gradually consuming input. We've got > > the Reader monad, but that appears to just give you global access to a > > single monolithic value. > > > > (I guess ultimately you can build all these specialised monads out of > > the general State monad if you want. I'm just surprised they're not > > already defined somewhere...) > > I have written a Consumer monad, but I never uploaded it to hackage, > because, as you say, it seemed like it should just be a specialized > version of the State monad?. > > It's here: > > http://www.n-heptane.com/nhlab/repos/haskell-consumer/ > > If people think it is actually valuable, I'll upload it. I would be > interested in hearing some debate about what I wrote, versus just > implementing it on top of the State monad, if anyone has something to > say about that. > > Since the Reader and Writer monads could be implemented as specialized > version of State, maybe that is an argument for implementing Consumer > as I have? (Also, I get the feeling this Consumer monad already exists > somewhere else?). > One could argue that we don't need implementations any Monad, with perhaps the exception of IO :-) Dave > > - jeremy > _______________________________________________ > Haskell-Cafe mailing list > [email protected] > http://www.haskell.org/mailman/listinfo/haskell-cafe >
_______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
