首页 > 其他 > 详细

范畴论完全解读:函子是范畴(高阶类型)间的映射

时间:2019-03-07 18:04:33      阅读:166      评论:0      收藏:0      [点我收藏+]

在范畴论里,一个范畴(category)指的是这样一个好东西,它由三部分组成:

  1. 一系列的对象(object).
  2. 一系列的态射(morphism).
  3. 一个组合(composition)操作符,用点(.)表示,用于将态射进行组合。

 

函子

前面对范畴的介绍反映了范畴内部各个对象之间的联系与相互作用,在范畴论里另外研究的重点是范畴与范畴之间的关系,就正如对象与对象之间有态射一样,范畴与范畴之间也存在某些映射,从而可以将一个范畴映射为另一个范畴,这种映射在范畴论中叫作函子(functor),具体来说,对于给定的两个范畴 A 和 B, 函子的作用有两个:

  1. 将范畴 A 中的对象映射到范畴 B 中的对象。

  2. 将范畴 A 中的态射映射到范畴 B 中的态射。

 

trait Functor[F[_]] {  def map[A, B](a: F[A])(f: A => B): F[B] } //list Functor的实现 def listFunctor = new Functor[List] {  def map[A, B](a: List[A])(f: (A) => B) = a.map(f) }

范畴论完全解读:函子是范畴(高阶类型)间的映射

原文:https://www.cnblogs.com/feng9exe/p/10491269.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!