Haskellの並列並行本の読書会#4

partake.in
Haskellの並列並行本の読書会。12月開催がなかったので2ヶ月ぶりでだいぶ忘れてる。。。
今回はMVarの話とか例外の話とか辺り。純粋関数型でも実用的には当然状態を扱う必要があるわけで、複数スレッドで状態を更新しようとすると当然ロックとか必要で、ロック持ったまま例外起きたらどうするのとか細かい話。まとめとして基本的に自分でtry/catchとかで囲ってThrowIOとかThrowToとかすると保護されていない行間catchの中とか気にしないといけないとか罠が多すぎて危険すぎるので、基本的に低レイヤなライブラリ作者以外はもうちょっと高水準なbracketとかtimeout使うのが無難なかんじ。