一階述語論理と、純粋関数
そういえば、
- 一階述語論理に、
- 純粋関数が一切出てこない
と思います。
何故か? もしかしてですが、
- (純粋関数以外の)その他のプログラムを1階とした時、
- 純粋関数は、階位差がマイナス(0階?)
だからでは無いでしょうか?
その他のプログラムより、マイナスの階位差となれば、
- 1階の議論をしている際に、視界から離れる、見えない、全く見えない
- その代わり、1階のプログラムに比べて、「良い性質」が有っても、全くおかしくない
事になります。
余りの矛盾
Haskell言語の高階関数では、当然、純粋関数を主に扱うと思いますし、その「高階」というのは、1階述語論理等に準拠した物だとは思うのですが、
- 高階関数の中身が純粋関数の0階となる
というのは、余りの矛盾だと思います。
矛盾とは、
- 絶望を希望に変える、数少ない道筋だと思いますが*1
そこまでしないと行けない絶望というのが何なのか、(語弊が有るかも知れませんが)疑問です。
結論
「いっちょかみ」が余りに無謀すぎ、絶望を希望に変えるより仕方なくなったのだとしたら、それはコンピュータ科学の敗北だと思います。
これからも『「いっちょかみ」の脅威と限界』でプログラミングが嫌いになる人は存在し続けることでしょう。
*1:「違うよね、これ現実じゃ無いよね、こんなの現実じゃ無い、学校に行く途中で昴治の家が見えて...」