gpt4 book ai didi

haskell - 包含在元组中的更新列表

转载 作者:行者123 更新时间:2023-12-01 11:03:21 26 4
gpt4 key购买 nike

基本上我想实现一个元组(或适合我的问题的任何数据类型),其中包含一个可以更新的列表。由于不变性等原因,下面的演示代码当然不起作用。这只是为了更好地说明我想要实现的目标。

我想知道是否有任何优雅的方法、数据类型(IOREfs?)或模块可以为我做到这一点,或者在这种情况下我是否真的需要拆开整个元组,并用更新的元素重建它。

顺便说一句:凭直觉我会期望至少只要测试没有被打印,列表消息就不会被评估。

test = ("192.168.1.1", 3455, (1234566, msgs))
msgs = ["aaa", "bbbb", "ccccc"]

main = do
--print test
let msg_tmp = "first" : msgs
let msgs = msg_tmp
print msgs
print test

最佳答案

正如其他人所说,不以功能方式做事应该有非常具体和重要的理由。您的元组似乎不必要地复杂,但您可以使用这样的额外消息创建一个新元组:

addMsg (a,b,(c,msgs)) msg = (a,b,(c,msg:msgs))

关于haskell - 包含在元组中的更新列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8667725/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com