
Yes, I don't explicitly want to make any assumptions about encoding. I want to make it general enough, so that if I encounter a situation where I DO have to make assumptions about the encoding, I can easily use Text (instead of whatever I was using before). If I have to start making assumptions about other things, then I could easily change it to other string libraries. Thanks for the responses, I think switching to classy-prelude might be the easiest one (it also forces good practices). How do those other libraries compose with Prelude, and other modules from base? For instance, does ListLike compose well with Data.Foldable? Same with mono-traversable. Does MonoFunctor compose well with Functor? Is there an easy "glue" code to, for instance, pass any Functor to a function that expects a MonoFunctor and make it work? Idem with other typeclasses. Basically, I think all of these seem great, but I'm concerned about getting "stuck" with them alone, and not being able to use all the other countless great libraries with them because of compatibility issues. -- View this message in context: http://haskell.1045720.n5.nabble.com/Polymorphic-functions-over-string-libra... Sent from the Haskell - Haskell-Cafe mailing list archive at Nabble.com.