Am Mittwoch, 13. Mai 2009 01:03 schrieb rocon...@theorem.ca: > I wanted to pass this idea around the cafe to get some thoughts before > submitting a trac on this topic. > > I'd like to see the mtl removed from the Haskell Platform. > > The mtl was a tremendous step forward when it was developed. However, we > have learned a few things about monad transformers since the development > of the mtl, and it is time that we moved forward. > > There are at least 3 significant problem with the mtl. > > 1) `pass' should not be a member functions of the MonadWriter class. It > is my understanding that there is no `MonadWriter w m => MonadWriter w > (ContT s m)' instance because the `pass' function cannot be implemented. > I'm also highly suspicious of some other methods too (I'm looking at you > `local'). > > 2) The `StateT s (Cont r a)' instance of callCC is wrong. The paper on > modular monad transformers > <http://www.cs.nott.ac.uk/~mjj/pubs/mmt/mmt.pdf> describes why this is > wrong. > > 3) I am told by many people that the order of the state and value pair in > `State' is backwards. Actually, I'm not entirely sure what the issue is > here, but I trust the people who say this.
4) The identifiers State and StateT are flawed. Something of value State s a doesn’t denote a state but a state transformer or however you want to name it. Best wishes, Wolfgang _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe