首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Haskell的Monad与APL的Monad

Haskell的Monad与APL的Monad
EN

Stack Overflow用户
提问于 2014-05-06 03:48:46
回答 4查看 673关注 0票数 10

在APL和Haskell中,monad是指两个完全不同的事物,还是从两个不同的角度来看相同的事物。

我对这两种语言都很陌生,并试图理解更高层次的概念。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-05-06 03:55:18

完全不同的是,在Haskell,单一功能是任何具有两种功能的东西。

代码语言:javascript
复制
bind :: m a -> (a -> m b) -> m b
return :: a -> m a

还有一些关于他们如何合作的规则。它实际上是从范畴理论中构建出来的。

在APL中,monad只是描述一个函数(动词)使用多少个参数的术语。在“一元论”中,“一元论”似乎可以作为“一元功能”的同义词,是逻辑和语言学中普遍存在的术语。

票数 12
EN

Stack Overflow用户

发布于 2014-05-06 03:55:24

两件完全不同的事!Monad经常与"Dyad“和"Triad”连用,意思是“一”、“二”、“三”。就APL而言,它表示“一个论点”。

哈斯克尔的单簧管完全不同。他们的词源可能是从“单面”和“操作”中提取出来的,这两者也完全不同。

票数 6
EN

Stack Overflow用户

发布于 2014-05-06 03:53:57

据我所知,它们是不同的东西。如果APL的monad只是一个只有一个论点的动词( 此页会让我相信;我不知道APL),那么它与哈斯克尔的monad有很大的不同,后者来自范畴理论,与函数的性质无关。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23485637

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档