Humanity

Edit the world by your favorite way

Prolog

しばらく Prolog やってみた感想

ここ最近 Prolog を書いていて、「Prolog はどうせ遅いし Prolog の良さはそこじゃない」がやっと体感的に分かってきた気がします。 ぶっちゃけPrologはどうせ遅いしPrologの良さはそこじゃないPrologの良さは簡単に書けることだ。高階な述語は使うのやめた…

Prolog に関するメモ

REPL でも述語を定義する方法 stackoverflow.com ['user'] で REPL でも述語が定義できる。 | ?- ['user']. woman(mia). ^D 部分適用 Prolog で部分適用。 ?- ['user']. add(X, Y, X+Y). |: true. ?- add(1, 2, R). R = 1+2. ?- call(add, 1, 2, R). R = 1+2…

quickrun.vim でバッファの Prolog コードを実行できるようにした

そういう Pull Request を送ってマージされました。 github.com 述語が多くなってくると REPL で確認するのも面倒になってくるかと思いますが、 そういう時はおもむろに新しいバッファを作って :setf prolog して :QuickRun すると実行した結果が別バッファ…

Prolog でツリー構造を扱うライブラリ

Prolog 手習いに作ってみた。 使い方はコメントとかテストコードから察してください。 Prolog 初心者なので添削してくれると嬉しいです。 SWI-Prolog (in WSL) で確認しています。 Item++Children みたいな感じでツリー構造を作っていきます。 Item は任意の…