しょうもないことですが、 hoge(X):- foo(X), bar(X). と言うのを、 hoge(X):- foo(X), bar(X), true. と書くようにしておけば、Emacsで書くとき、「Ctrl+k」で述語を行単位で編集しやすいです。「,」と「.」の書き換えが面倒な人へ。
しょうもないことですが、 hoge(X):- foo(X), bar(X). と言うのを、 hoge(X):- foo(X), bar(X), true. と書くようにしておけば、Emacsで書くとき、「Ctrl+k」で述語を行単位で編集しやすいです。「,」と「.」の書き換えが面倒な人へ。
Prologのコードを美しく書くにはどうしたらいいか?。少々ボリュームがあるので、根気のある人だけ読んでくださいw。でもきっとためになります。 まずPrologを書くに当たって、重要なことは「引数の性質が何であるか」と言うことです。 Prologの引数には3つの性質があります。 定数としての引数。これはhoge(+bar)とSWI-Prologのhelpに書かれています。 処理した後に値を返すための引数。hoge(-bar)。 上記どちらでも良い引数。hoge(?bar)。 たとえば、times(X,Y,Z)という述語を考えてみます。これは「X*Y=Z」という意味としましょう。このコードは以下のようになります。 times(X,Y,Z):- Z is X * Y. あ、「`*’使ってたら意味ないじゃん」というつっこみは無しでw。例ですからw。このときもし ?- times(X,Y,3).
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く