next up previous
Next: 8 名前無し変数の導入 Up: ソフトウェア第三 講義資料 パターンマッチ,前向き推論,ユニフィケーション,後向き推論 Previous: 6.2 ゴールの問い合わせ

7 組み込み述語

画面表示などの副作用を伴う組み込み述語を追加するには, show-prolog-varsと同じように定義した手続きを用意し 初期化のときにその手続きを登録すればよい.
(defun prolog-pp (args bindings other-goals)
  (format t "~%")
  (dolist (arg args)
      (format t "~S "
                (substitute-bindings bindings arg)))
  (prove-all other-goals bindings))

(defun init-prolog ()
  (clrhash *prolog-database*)
  (setf (gethash 'show-prolog-vars *prolog-database*)
        'show-prolog-vars)
  (setf (gethash 'pp *prolog-database*)
        'prolog-pp)
  )


generated through LaTeX2HTML. M.Inaba 平成18年5月7日