1
在Lisp,假設我有知識庫中的這兩個規則:演繹獵犬例
(append nil ?x ?x)
(<- (append (cons ?x ?l1) ?l2 (cons ?x ?l3))
(append ?l1 ?l2 ?l3))
話,怎麼可能我推斷,如果我們問
(ask '(append (cons a (cons b nil))
(cons c nil)
?l)
'?l))
,我們將得到的結果'((cons a (cons b (cons c nil)))
?
這是我的Lisp類的一個例子,我希望你能幫助我理解這個獵犬。 謝謝。
這看起來像一個Lispy Prolog,也許是來自PAIP(http://norvig.com/paip.html)的一個。它當然不是標準Common Lisp(或Scheme,或Emacs Lisp ...)的一部分。如果你更關注它的來源,我們可能會更有幫助。 – Pillsy 2009-12-03 15:53:30