作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在阅读 Wadler 的原始论文 Monads for Functional Programming (1992),我感觉好像我明白了,但是,在状态处理程序的非 monadic 描述中,他展示了一个 State 的原始 monadic 描述:
type M a = State -> (a, State)
eval :: Term -> M Int
eval (Con a) x = (a, x)
最佳答案
展开类型同义词:Term -> M Int
相当于 Term -> State -> (Int, State)
.
或者,将函数定义视为 eval (Con a) = \x -> (a, x)
.
关于haskell - 瓦德勒的论文 : How is a tuple a function?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25943306/
编辑 II: 啊,好吧:我不明白 a 和 b 是如何在 的定义中绑定(bind)的评估!现在我知道了。如果有人感兴趣,这是一个跟踪a和b的图表。我非常喜欢图表。我发誓,绘制箭头确实提高了我的 Hask
我是一名优秀的程序员,十分优秀!