##$ ghci -XOverloadedStrings
GHCi, version 6.10.1: http://www.haskell.org/ghc/ :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer ... linking ... done.
Loading package base ... linking ... done.
Prelude> :t "foo"
"foo" :: forall t. (Data.String.IsString t) => t
Prelude> "foo"
"foo"
Prelude> :m +Data.ByteString.Lazy.Char8
Prelude Data.ByteString.Lazy.Char8> :t "foo" :: ByteString
"foo" :: ByteString :: ByteString
Prelude Data.ByteString.Lazy.Char8> "foo" :: ByteString
Loading package bytestring-0.9.1.4 ... linking ... done.
Chunk "foo" Empty
#"literal" が fromString "literal" と解釈される (42 が fromInteger 42 と解釈されるように)
##〜宣伝〜
##Haskell-jp ML にも流したけど、中身は参加者がつくるので、できるひとはなんか考えてくれるとうれしいですー