简体   繁体   中英

GHC: Display of unicode characters

Further to my first question on the management of the unicode characters in the production of .exe file, this is also a bug in GHC?

> print "Frère"
"Fr\233re"

print x is equivalent to putStrLn (show x) , where show converts a type of the Show class to a string representation.

In your case, x already has the String type. One might think that the String implementation of show would simply return its argument unchanged, but actually it transforms it into an ASCII string literal token with the same syntax as used in Haskell source code. This is done by surrounding it with quotes and by escaping 'special' characters (basically whatever is not on your keyboard).

So, this is not a bug but rather the expected behavior of print . If you want to output your string directly, use putStrLn instead.

Try

> putStrLn "Frère"
Frère      

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM