0%

From callback to (Future -> Functor -> Monad)

From callback to (Future -> Functor -> Monad) 這篇寫得很好,雖然是用Javascript實做,不過還是值得一看。目前我的能力還不足以使用C++重寫一次,先用殘破的Javascipt來練習吧。

Callback

1
2
3
4
fs.readFile('...', function (err, data) {
if (err) throw err;
....
});

這就是continuation-passing style。最大的問題就是nested callback之後,整個程式碼雜亂無章,難以維護。因此想了很多方法來改善流程。

Future

現在各大語言都有Future跟Promise了,Javascript的版本可以參考上面那篇文章的實做。