Hello,

Why exporting a function doesn't force you to make its inputs derive a typeclass? That would solve all name clashing (just derive also or give different name,  because it is obviously too generic).

Why can't you overload field accessor via typeclass easily?
data Foo = Foo {HasSize => size :: Int}
> :t size
HasSize a => size a -> Int

Why is String not deprecated yet,  throwing warning into your face.

I think that haskell is really missing some uniformity, there is nothing like AbstractString and AbstractArray (something like java Collections) so a lot of modules introduces its own functions that are just aliases for others.  (Even Prelude itself suffers from this - map fmap liftM, pure return...).

King regards!

Odesláno z BlueMail