On 8 February 2011 09:57, John Lato <jwl...@gmail.com> wrote: > I think the real problem we have with container classes has a lot more to do > with what we would use them for. That is, Haskell already has Monoid, > Foldable and Traversable. These three (especially Foldable) cover nearly > everything OOP programmers would expect out of generic container operations.
That was what my rewrite was going to be using. The problem, however, is two-fold: * Dealing with types of kind * vs kind * -> * * Dealing with types of kind * -> * that have a restriction on the type parameter (e.g. Set). I was basing my approach on Ganesh's rmonad [1] library whilst taking into account the Functor => Applicative => Monad hierarchy when re-defining the classes, but the approach was very quickly becoming unwieldy. [1]: http://hackage.haskell.org/package/rmonad -- Ivan Lazar Miljenovic ivan.miljeno...@gmail.com IvanMiljenovic.wordpress.com _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe