3
我想在我的代码中使用它,而不是重复它,但由于它只涉及大量通用的词,如“功能”或“组成”,我无法通过搜索找到它。Haskell称之为Hom Functor/Monad是什么?
要完全具体,我在寻找
instance Functor (x->) where
fmap f p = f . p
我想在我的代码中使用它,而不是重复它,但由于它只涉及大量通用的词,如“功能”或“组成”,我无法通过搜索找到它。Haskell称之为Hom Functor/Monad是什么?
要完全具体,我在寻找
instance Functor (x->) where
fmap f p = f . p
这是基本的阅读器(或环境)单子,通常简称为((->) e)
。 (这是(e ->)
写成部分应用函数,而不是作为一个部分;后面的语法是有问题的解析。)您可以通过导入Control.Monad.Reader
或Control.Monad.Instances
得到它。
请注意,'Reader'本身就是'(( - >)e)'的包装。此外,对于'Applicative'实例,'pure'和'(<*>)'恰好是** K **和** S **组合器,这总是很有趣。 :] –
是的,这就是为什么我说“基本读卡器monad”;实际的Reader monad是基本'(( - >)e)'结构周围的一些糖,对于为本地环境引入辅助“范围”的'local'机制最为有用。 – geekosaur
谢谢! “读者”是我没有尝试搜索的一个词。 – Owen