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

Mon Mar 31 15:31:44 PDT 2008 Simon Marlow

Am Dienstag, 1. April 2008 00:31 schrieb Simon Marlow:
Mon Mar 31 15:31:44 PDT 2008 Simon Marlow
* add overloaded string literals M ./status.hs +2
Hello, although I like overloaded string literals very much, I see one problem with the current implementation of them in GHC. It’s the class name “IsString”. No other Haskell class name I know starts with “Is”; we don’t have “IsNum”, “IsMonad”, etc. 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? Best wishes, Wolfgang

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@gmail.com
participants (3)
-
Bulat Ziganshin
-
Simon Marlow
-
Wolfgang Jeltsch