scala(9) Monad

一个单子(Monad)说白了不过就是自函子范畴上的一个幺半群而已。这句话涉及到了几个概念:单子(Monad),自函子(Endo-Functor),幺半群(Monoid),范畴(category)。
范畴
范畴的定义
范畴由三部分组成:

一组对象,是需要操作的数据的组合。
一组态射(morphisms)。一组态射,是数据对象上的映射关系,比如f:A -> B,每个态射会绑定两个对象,假如f是从源对象A到目标对象B的态射,记作:f:A -> B。
态射组合。就是态射能够几个组合在一起形成一个新的态射。,假如h是态射f和g的组合,记作:h = g o f。
下图展示了一个简单的范畴,该范畴由对象 A, B 和 C 组成,有三个单位态射 id_A, id_B 和 id_C ,还有另外两个态射 f : C => B 和 g : A => B 。

  

 

 

待续。。。

转载于:https://www.cnblogs.com/mlfh1234/p/10005603.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值