patch applied (haskell-prime-status): add overloaded string literals

Bulat Ziganshin bulat.ziganshin at gmail.com
Fri Apr 11 10:48:28 EDT 2008


Hello Wolfgang,

Friday, April 11, 2008, 6:19:26 PM, you wrote:

> Would it be possible to change the class name “IsString” to something
> different?  Would it be possible to remove the type alias “String” and
> let “String” be the class name?  Can I add this remark somewhere on the wiki?

this reminds me one idea i've once proposed to discuss: allow to use
class names in type signatures with obvious translation to "classic"
code:

putStr :: String -> IO ()

means

putStr :: (String a) => a -> IO ()

writing a lot of polymorphic code for Streams lib, i've found this
feature very useful - with current standard, type signatures using
type classes are very hard to read:

-- | Copy `size` bytes from one BlockStream to another
copyStream :: (BlockStream h1, BlockStream h2, Integral size)
           => h1 -> h2 -> size -> IO ()





-- 
Best regards,
 Bulat                            mailto:Bulat.Ziganshin at gmail.com



More information about the Haskell-prime mailing list