モナドって何?

なんかぐぐってたら見つけた
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/haskell/haskell-jp/368

> ところで「モナドって何」っていう質問に、なんで一言でばしっと答えら
> れないんですかね。私も、分からないうちは「分かるようになったら、初
> 心者に分かりやすく教えてあげよう」なんて殊勝な事を考えていたんです
> が、分かってみると「めんどくせー」になってしまいました。あるいは、
> 圏論がどうのこうのとか不必要な話で煙にまいてとか性格の悪さ全開にな
> ってしまったり。モナドの呪いかなんかですかね。

プログラマにとっては、コンビネータライブラリ(高階関数)のためのデザインパターンというのはいい答なんでないかなぁと思った。

一般的にモナドって何って質問に、答えようがないのは、現実世界に殆ど似たものがない抽象概念だからじゃないかなぁ。例えば、「群って何」って聞かれた時も答えようがない気が。思いつく解答の例。
・定義を教える→そういう質問をする人に、定義教えても、だから何?としか思わないだろうし、そもそも、あの群の公理だけからでは殆ど自明なことしか言えなくて、有限群とかリー群とか制限つけない(これでも強すぎるので、もっと制限つけるのが普通)と面白いことは言えない
・具体例をあげる→しかし、個々の群の面白さが分かるには、数学の他の分野も知らないとダメな気がする。対称群とか定義だけ見ても面白そうにはみえんよなー。モナドの場合も個々の例はtrivialに近いような(少なくとも、普通にHaskellで出てくるような例では)
代数系の一種と答える→答になってない