Yコンビネータの手前にいろいろあるらしい

 おとうさん、ぼくにもYコンビネータがわかりましたよ!読んでいて、自分はまだまだ領域理論とかの計算機科学について理解できていないなと無知の知を得る。

 ところで、YコンビネータというとY コンビネータって何? - IT戦記のときに遭遇していたのだけど、id:nowokayの記事でZコンビネータなるものが出てきて、おいおいコンビネータっていろいろ種類あるのかよ、と軽く調べてみるとSコンビネータとかKコンビネータとかもあるっぽい。

 どこかにコンビネータ一族についてまとめたページがないかと思って探していると檜山さんがコンビネータとは - 檜山正幸のキマイラ飼育記ってエントリを書いていて期待して開いたら…。長男・次男め。

 日本語版のwikipediaにはコンビネータの項がないのだけど、英語版のwikipediaだと詳細な説明がある。Combinatory logic - WikipediaのExamples of combinatorsの項とかにKとかSとか出てくる。

A more interesting combinator is the fixed point combinator or Y combinator

いくつかあるコンビネータのうち、より興味深いものとしてYコンビネータというのがあるってことか。いきなりYコンビネータに着陸しようと言うのが間違いっぽい。

 Yコンビネータばかりがテーマとして賑わっているけども、Yコンビネータに至る前に理解の礎として積み上げておかないといけないものがあるっぽいよ。

 実用上これが何の役に立つとかまるで理解できていないのだけど、Y combinatorは

p = g(f), f(p) = p

or, alternately:

f(g(f)) = g(f).

Fixed-point combinator - Wikipedia

とあるから、あぁなるほど「不動点」なのか。なんとなく自然対数を微分するようなのをイメージすれば合ってるんだろうか。