确定State Monad的状态和内容

时间:2019-11-14 15:28:02

标签: javascript functional-programming monads state-monad

过去几周我一直在阅读和观看FP上的资料,现在我尝试以一个简单的State Monad为例。我正在使用Javascript编程(我知道,它不是Haskell ..),并且我正在为这个简单的示例而苦苦挣扎,所以我想我可能从一开始就假设有些错误。

我正在谈论的简单示例是将字符串转换为字符列表,如下所示:

// toChars :: String -> [String]
// "hello" => ['h','e','l','l','o']

我发现布莱恩·贝克曼(Brian Beckman)的这幅视频解释了Monad州非常有趣,所以我想试一试。我一直在审查发布在here上的C#示例,该示例标记了二叉树(向每个叶子添加数字,每次到达叶子时都会递增)。在这种情况下,状态是数字,内容是标签树。

问题是,我无法真正确定字符串到数组示例中的状态和内容,因为两者都会发生变异,并且我需要将两者都传递给链中的下一个单子。

是否要遵循某种规则来决定内容和状态?

谢谢!

0 个答案:

没有答案