
(defun palindromep (x)
(with-prolog
(append ?a (?b . ?c) ?.x) ; note "?.x" reference
(or (reverse ?a ?c)
(reverse ?a (?b . ?c)))))
 (palindromep '(yes no maybe)) NIL (palindromep '(yes no maybe no yes)) T The body of a with-prolog  returns  t  if it succeeds and a non-local exit is not executed. It returns nil on failure.