小编Jon*_*nas的帖子

类型构造函数和monad的返回函数之间的区别(在Haskell中)

我试图弄清楚Haskell中的monad但是还没有太远.

我找到了https://en.wikibooks.org/wiki/Haskell/Understanding_monads#cite_note-1 和其他一些教程/解释,但似乎都没有解释类型构造函数和返回函数之间的区别.

据我所知

  • type构造函数根据基本数据类型的给定值构造monad.所以它就像Java中的普通构造函数一样,它从给定参数构建一个新实例.
  • return function将类型构造函数应用于基本数据类型的给定值,并返回构造的monad.

那么让两个函数基本相同的重点是什么呢?

编辑 所以使用Maybe-monad的例子,

  • country = Just "China":(构造函数)为值"China"创建monad.
  • return "China":返回对应于中国值的monad,所以它基本上是包含"China"值的monad .

一般来说,我理解monad是值的容器.monad的一种用法是将简单/现有计算组合到更复杂的计算中.

monads haskell

3
推荐指数
1
解决办法
639
查看次数

标签 统计

haskell ×1

monads ×1