関数型プログラマのためのモナド理論 (2) 浜名誠 CAPS, IPL, 2007, November 19th 1 Review: モナド Def. 圏 C 上のモナドとは • 関手 T : C → C, • 自然変換 η : Id → T, µ : T 2 → T から成る三つ組 (T, η, µ) で任意の A ∈ C に対して次の図式を可換にするもの: T 3 A µT AE T 2 A T A ηT AE T 2 A ' T ηA T A d d d d= © = T 2 A T µA c µA E T A µA c T A µA c Notation 関手の合成 T ◦ T を T 2 と書く。T 3 なども同様。関手の射部分 T (f) を T f と書く。 2 Review: モナドの例 Ex. Set 上のモナド 1. (a) Kleene 閉包 A∗
関数型プログラマのためのモナド理論 (1) 浜名誠 CAPS, IPL, 2007, November 6th 1 動機 • 「モナド」で Google すると、沢山の Haskell プログラマの苦労が見える • よく見る格言: Haskell のモナドを理解するのに圏論のモナドを理解する必 要はない • 「分かりやすい説明」というものが、本当に分かりやすい? • モナドの理解を実行から追う、というのは話が逆 • 主張: 数学の方が簡単 • そもそもなぜモナドを使うとよいのか。プログラム意味論の歴史に理由がある • それらを解説 • また、モナドから直ちに出てくる圏論的構成は有用 • それらを通して、計算機科学でなぜ圏論が有用なのかの一例 feedback をお願いします。 2 全体の内容の予定 1. 圏論のモナドのアイデアと関連するいくつかの construction 2. 計算モナ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く