作者:冷尔岚钰_820 | 来源:互联网 | 2022-10-17 11:58
在阅读了String, Text, Text.Lazy, ByteString, ByteString.Lazy
Haskell中关于字符串的所有5个()常用类型之后,我宁愿精疲力尽:
我需要的是一个不可变的String类型(我从文件中读取一次,从不更改),具有快速索引(O(1)),并且可以由代码点使用,而不是由潜在的不完整字节使用,形成一个代码点。
我可以忍受一个Data.ByteString.UTF32
,实际上,就像那个表示形式一样,我不需要再对多字节编码进行小心了。
我是否需要为自己编写这样的模块,或者(是否有机会)别人是否得出了相同的结论并且已经做到了?
1> Li-yao Xia..:
这听起来就像数组Char
:Data.Vector.Unbox.Vector Char
。
https://hackage.haskell.org/package/vector-0.12.0.3/docs/Data-Vector-Unboxed.html
@BitTickler,不,`Char'是完整的代码点,存储为32位。