【发布时间】:2019-05-29 12:19:29
【问题描述】:
问题:
我正在努力理解state-monad。
有点难以理解如何使用它,我正在寻找一些示例。
假设我要实现一个函数[()] -> [Int]:
numerate :: [()] -> [Int]
我应该将列表的每个元素映射到状态然后折叠它吗?
我该如何使用State?
预期行为:
numerate [(), (), (), (), ()]
-- [1, 2, 3, 4, 5]
谢谢!
【问题讨论】:
-
您的尝试有什么问题?
-
对不起。我不清楚你的问题是什么......
-
我想从 map (_ -> modify(+1)) xs 之类的东西开始,但是...折叠后如何返回列表?
标签: state-monad haskell monads state-monad