2012-03-16 60 views
20

我最近試圖找到monads和monoids之間區別的好資源。Scala中的monoid vs monad

有人可以提供一個良好的資源鏈接,或者可能需要時間來闡述相似之處/差異?

+3

關於monads和monoids的內容太多,我想每個人都有自己的「良好來源」。我的triade是:這[SO問題](http://stackoverflow.com/questions/3870088/a-monad-is-just-a-monoid-in-the-category-of-endofunctors-whats-the-problem) ,[單色不是隱喻](http://www.codecommit.com/blog/ruby/monads-are-not-metaphors)Daniel Spiewak和[Monads是多米諾骨牌](http://apocalisp.wordpress.com/ 2011/07/01/monads-are-dominoes /)作者:RúnarÓli – blouerat 2012-03-17 00:21:37

+0

類別理論「對於任何類別C,其內部管理者的範疇[C,C]具有由構圖引發的monoidal結構。 C,C]是C上的單子。「 - 從https://en.wikipedia.org/wiki/Monoid_%28category_theory%29。請參閱https://en.wikipedia.org/wiki/Monad_%28category_theory%29關於monad在類別理論中的定義。 – 2015-06-23 00:07:15

回答

26

Monads are monoids in the category of endofunctors.因此,monad只是monoid的一個例子,這是一個更一般的概念。

而且,雖然這可能是技術上是真實的,最簡單的回答是,單子和幺是真的沒有什麼喜歡對方,你不應該試圖瞭解它們之間的區別,只是學習他們。互聯網上有很多關於它的材料,很容易被Google搜索到。

+4

當我應用於編程語言時,我驚訝於(並恐嚇)我在數學上相對相關的想法如何在所有實際術語中變得完全不同。 – 2014-02-25 19:12:57

+1

社區wiki的另一個問題的答案是最好的和最簡潔的一個http://stackoverflow.com/a/7829607/541202 – Traveler 2014-12-18 14:37:04

+0

更確切地說,「對於任何類別C,其內部工作者的類別[C,C]具有由組合物誘發的幺半羣結構。[C,C]中的幺半羣是C上的單子。 - 從https://en.wikipedia.org/wiki/Monoid_%28category_theory%29。請參閱https://en.wikipedia.org/wiki/Monad_%28category_theory%29關於monad在類別理論中的定義。 – 2015-06-22 23:58:27