matarillo.com

The best days are ahead of us.

モナド

2018-06-30 11:07:18

みんな大好き、モナドに関する記事の一覧

Fabulous Adventures In Coding

元MSのC#コンパイラーチームの主任デベロッパー、その後コベリティを経て現在はFacebookにいるEric Lippertのブログで連載されていたモナドの解説記事の翻訳。

パート1
モナド・パターンは型に関するパターンである。
パート2
モナド的な型についていくつか実例を紹介し、共通点を知る。
パート3
モナド的な型に対してある演算を行い、ルールを2つ見出す。
パート4
2つ目のルールを一般化できないか試す。
パート5
一般化した2つ目のルールをさらに変更し、本当のルールを得る。
パート6
2つのルールにいくつかの制約を追加する。
パート7
最後の制約を説明し、制約のことをモナド則と呼ぶ。
パート8
モナド生成処理と関数適用処理の伝統的な名前を紹介。ワークフローとしてのモナド。
パート9
値にデータを関連付けるモナド。
パート10
ワークフローの例、シーケンスモナドに対するSelectMany操作。
パート11
パート10の補足。Whereメソッドを定義できるのは加法的モナド。
パート12
LINQのクエリ構文はどのように変換されるか。
パート13(最終回)
Stephen Toubの記事(Taskコモナド)の紹介。

その他

モナドの驚異
モナドとLINQに関する英語ブログ記事の翻訳。
C#とScalaのモナド
C#とScalaにおけるモナドの比較。