Haskell类型类show不支持unicode,但语言的其余部分支持unicode。我无法找到unicode的标准替代类型类。 Haskell有unicode show的版本吗?
中描述了此属性答案 0 :(得分:4)
我认为这个问题不合适。在show :: (Show a) => a -> String
中,String
是[Char]
的类型同义词,而Char
是足够智能的数据类型来表示任何Unicode字符。
字符类型Char是一个枚举,其值表示Unicode(或等效的ISO / IEC 10646)字符(有关详细信息,请参阅http://www.unicode.org/)。该集扩展了ISO 8859-1(Latin-1)字符集(前256个字符),它本身是ASCII字符集(前128个字符)的扩展。 Haskell中的字符文字类型为Char。
当您选择简单的数据类型时,这是一种简单的功能,对于从其他语言移民的人来说,这可能会让人感到惊讶,因为默认字符串类型只能代表ASCII或UTF-16或其他任何垃圾
因此,在这个意义上show
已经 是show
的Unicode版本。无论String
是否是Unicode的有效表示,完全是另一个问题。