背景 js(javascript)揉合了面向对象和面向函数的特性,使用js解释如何从面向对象迁移到面向函数非常适合,这部分介绍js continuation monad的简明推导。 continuation monad monad的一种,用于模式化cps(也就是回调风格),monad是函数型语言处理副作用的其中一种方式,可以理解为容器(见末尾参考) 定义 unit :: a -> monad a bind :: monad a -> (a -> monad b) -> monad b &nb…
背景 js(javascript)揉合了面向对象和面向函数的特性,使用js解释如何从面向对象迁移到面向函数非常适合,这部分介绍js continuation monad的简明推导。 continuation monad monad的一种,用于模式化cps(也就是回调风格),monad是函数型语言处理副作用的其中一种方式,可以理解为容器(见末尾参考) 定义 unit :: a -> monad a bind :: monad a -> (a -> monad b) -> monad b &nb…