Prologが嫌いというプログラマは多いと思います。
色々理由は言われていますが、新たな説を思いついたので書いてみようと思います。
Prolog が気持ち悪い本当の理由とはタイムリープを使いこなす貪欲の魔女のようなことを何度もしなくてはならないからではないかと思います。普通の人は当たり前ですがタイムマシンに乗って時間を行ったり来たりしませんし、すばる君が失敗したら生き戻りさせてやり直させるということもしません。
しかしながら、Prologのプログラムでは失敗したらなかったことにして別な世界線が始まり別の選択を実行し始めます。そして失敗したらまた突然時間が巻き戻って別な世界線の別な選択が始まります。
我々は経験的に、普通の生活をしていてさまざまな計画を立てます。その計画では雨天の時は中止であるとか決行であるとか決めたりはします。事故が起きれば中止とかになります。
ですから普通のプログラムでも同様に計画を立てて、事故が起きたら中止するようなプログラムを書きます。
しかし、Prologのプログラムは違います。事故が起こったらなかったことにして時間を巻き戻して何事もなかったかのように別の世界線が始まります。これは気持ち悪いです。あり得ない感覚があります。
この時間を操作する感覚に慣れるには時間がかかります。4次元空間に慣れろと言われているようなものなので簡単に慣れられるものではありません。
だから普通のプログラマはPrologが嫌いなのではないかと思います。