すごいHaskell読書会 in 大阪 2週目 #16 : ATND https://atnd.org/events/63853
「すごい Haskell 読書会 in 大阪」2周目の第16回、今日は第14章「もうちょっとだけモナド」の14.1から14.4まででした。
第14章「もうちょっとだけモナド」
14.1 Writer? 中の人なんていません!
Writer
モナドの話。なにげにかなりボリュームのあるセクション。
プログラムにログを追加するくらいのことで、こんな大袈裟なことになるのかよ! と言いたい気分です。いやしかし、モナドに慣れればそんな大袈裟なことでもないのかもしれません。
14.2 Reader? それはあなたです!
Reader
モナドの話。
本の中では「関数モナド = Reader
モナド」という雰囲気がただよっていますが、今日の発表によれば、Reader
モナドはもっと一般的なものであるとのこと。
14.3 計算の状態の正体
State
モナドの話。
こいつを使いこなせればだいぶいろいろなプログラムが書けそうな気がするのですが、同時に一番理解できてないやつでもあります。今日の演習問題もこの内容がらみでした。
14.4 Errorを壁に
Either
の話。
前回、エラーの表現に Maybe
を使う話がありましたが、そこではエラーの表現が単に Nothing
になっていました。代わりに Either
を使うとエラーの内容も表現できます。
感想とか
正直言って、理解が追いつかなくなっています。それでも、一人で本を読むよりも他の人の発表を聞くほうが、刺激がもらえて良いです。次回は同じ範囲の発表を僕が担当することになったので、再度本を読み直します。
それにしても、昨年あたりは「実務にはあまり関係しないけど自分の幅を広げるために勉強しよう」くらいの気分でした。しかし最近は、Haskell そのものを使うわけではないですが、考え方は実務に関係してくるようになってきました。特に、実務で Swift を使い出した頃から影響が大きくなってきています。なにが役に立つか分からないものですね。