[climacs-cvs] CVS update: climacs/prolog-syntax.lisp

Update of /project/climacs/cvsroot/climacs In directory common-lisp.net:/tmp/cvs-serv8369 Modified Files: prolog-syntax.lisp Log Message: an alpha numeric char in ISO prolog is either alphanumericp or eql to #\_ Date: Sun Mar 27 18:58:20 2005 Author: crhodes Index: climacs/prolog-syntax.lisp diff -u climacs/prolog-syntax.lisp:1.3 climacs/prolog-syntax.lisp:1.4 --- climacs/prolog-syntax.lisp:1.3 Sun Mar 27 18:22:45 2005 +++ climacs/prolog-syntax.lisp Sun Mar 27 18:58:20 2005 @@ -180,7 +180,9 @@ (t (fo) (return (make-instance 'error-lexeme)))) IDENTIFIER (loop until (end-of-buffer-p scan) - while (alphanumericp (object-after scan)) + while (let ((object (object-after scan))) + (or (alphanumericp object) + (eql object #\_))) do (fo)) (return (make-instance 'identifier-lexeme)) LINE-COMMENT @@ -239,12 +241,16 @@ (return (make-instance 'quoted-lexeme)))) VARIABLE (if (or (end-of-buffer-p scan) - (not (alphanumericp (object-after scan)))) + (let ((object (object-after scan))) + (not (or (alphanumericp object) + (eql object #\_))))) (return (make-instance 'anonymous-lexeme)) (go NAMED-VARIABLE)) NAMED-VARIABLE (loop until (end-of-buffer-p scan) - while (alphanumericp (object-after scan)) + while (let ((object (object-after scan))) + (or (alphanumericp object) + (eql object #\_))) do (fo)) (return (make-instance 'named-lexeme)) NUMBER
participants (1)
-
crhodes@common-lisp.net