発端 モナドの正体が分かると、 次はモナドを実装してみたくなるものです。 前回は試しに Python でモナドを実装してみましたが、他の言語でも実装できないことはありません。 ただクロージャや部分適用が簡単に使えない言語では本質的でないところで苦労する羽目になるので、前回は Python を使いました。 という訳で今回は “エディター界のPHP” でお馴染みの Vim script でモナドを実装することにしましょう。 なお、今回作成した Vim script によるモナドの実装は GitHub で公開中です。 方針 最初に Maybe のようなモナドの具体例を実装するためのフレームワークを作っておいて、次に Maybe の実装例を示すことにしましょう。 Vim script はプログラミング言語として見る分には貧弱ですが、 dictionary (他の言語で言うところのマップ/ハッシュテ