函数式编程中的 Applicative Functor、Monoid 与 Monad 模式
1. Applicative Functor
Applicative Functor 是一种可以用纯函数式方式实现的类型。它具有函数成员,能接收如列表这样的上下文,并将 Applicative Functor 操作应用于列表中的成员,返回合适的结果。
在具体实现时,可以有两种方式:一种是将对象包含在 Applicative Functor 类型内部;另一种是将对象放在单独的列表中,实现一个定义了一组函数的 Applicative Functor 类型,这些函数接收列表(上下文)并将 Applicative Functor 功能应用于列表中的对象。在后续的示例中,采用了前一种方式。
1.1 具体示例
示例实现基于之前的混合 Functor 示例构建,创建了一个可以容纳对象列表的容器,并能将函数列表应用于这些对象。同时,使用伴生对象提供 pure 操作的实现,该操作可以将对象放入上下文,即创建容器的一个实例并包装提供的对象。
- Functor 特质 :与之前章节使用的特质相同,表明 Applicative Functor 也是 Functor 模式的一个示例。
- ApplicativeFunctor 特质 :在 Functor 的基础上添加了
apply操作,该操作接收一组与 Functor 中对象处于相同上下文类型的函数,并返回在上下文中应用这些函数的结果。
超级会员免费看
订阅专栏 解锁全文
6

被折叠的 条评论
为什么被折叠?



