我有一个函数,其中包含前101个字符:
characters :: [String]
characters = [[chr i] |i<-[0..100]]
我需要做的是让下一个函数永久地附加到这个函数,到目前为止我已经尝试过类似的东西,但是这并没有保留结果。
append :: [String] -> String -> String -> [String]
append characters xs ys = characters ++ [(take 2 (xs++ys))]
所以我需要的是能够使用追加功能不断扩展我的角色功能,而不会丢失结果。 谢谢你的回答。
答案 0 :(得分:4)
值在Haskell中是不可变的,所以
characters ++ somethingElse
生成一个新列表,前面包含characters
的副本,characters
本身保持不变。
所以,如上所述,你的任务是不可能的。有什么实际要求?
答案 1 :(得分:1)
我不知道,你要用你的例子做什么。但是要回答你的主题,你可以import
使用hiding
- 标志并编写自己的函数版本,例如:
import Data.Text hiding (append)
HTH