0
this pageの下部の例を使用して、this Prolog codeをラケットのDatalogに移植しようとしています。データマークがラケットで動作しない
#lang datalog
edge(a, b). edge(b, c). edge(c, d). edge(d, a).
path(X, Y) :- edge(X, Y).
path(X, Y) :- edge(X, Z), path(Z, Y).
path(X, Y)?
pathall(X,X,[]).
pathall(X,Y,[X,Z|L]):- arc(X,Z),pathall(Z,Y,L).
pathall(a, d)?
しかし、コードの最後の行に[X,Z|L]
でこのエラーを与えている:
read: expected a `]' to close `['
私はデータログにリストを表現するにはどうすればよいですか?ご協力いただきありがとうございます。
したがって、このような作業にはProlog iteselfを使用することが最善の方法です。 Prologコードを受け取る他のScheme?またはハスケル? – rnso
これらの質問の文脈で私の個人的な推奨は、Prologを直接使用することです。これは本格的なプログラミング言語であり、データベースも組み込まれています。真実に直接ジャンプしてみませんか? – mat