所以我认为Lambdas在Learn You a Haskell中得到了证明:
(filter (\xs -> length xs > 15) (map chain [1..100]))
Run Code Online (Sandbox Code Playgroud)
xs的输入是从(map chain [1..100]))
容易阅读的生成的列表.
所以这里我感到困惑,看一些真实世界代码(tm).
这是管道的功能
fmap f (ResourceT m) = ResourceT $ \r -> fmap f (m r)
Run Code Online (Sandbox Code Playgroud)
r的输入来自哪里?
sep*_*p2k 12
r在\r -> fmap f (m r)实际调用函数之前,它将没有值.在定义中fmap,函数永远不会被调用 - 它只存储在一个ResourceT.然后它可以被取出ResourceT并被召唤出来.那是什么时候r会得到一个价值.
| 归档时间: |
|
| 查看次数: |
169 次 |
| 最近记录: |