摘要:
一个C++版本的State Monad。 需要C++11。#include template class M> struct Monad { template M ret(A); template M bind(M, std::function(A)>);};template stru... 阅读全文
posted @ 2015-03-11 20:50
wehu
阅读(737)
评论(0)
推荐(0)
摘要:
Scala有很强的类型系统。加上一些隐式规则,我们可以在scala里模拟haskell的monad。 先从haskell的monad type class开始: class Monad M where ret :: a -> M a bind :: M a -> (b -> M b) -> M b
这里M是type class的参数。它是一个高阶类型, kind是 * –> *。认识到这... 阅读全文
posted @ 2015-03-11 00:05
wehu
阅读(1323)
评论(0)
推荐(0)

浙公网安备 33010602011771号