Update of /project/cl-unification/cvsroot/cl-unification In directory common-lisp.net:/tmp/cvs-serv5468
Modified Files: unifier.lisp Log Message: Fixed problem with the unification of a list with a SEQUENCE-TEMPLATE. The implementation was not checking that the length of the list was compatible with the length of the required elements in the template.
Apart from that, keyword matching is still unimplemented.
Date: Tue Oct 25 21:17:33 2005 Author: mantoniotti
Index: cl-unification/unifier.lisp diff -u cl-unification/unifier.lisp:1.3 cl-unification/unifier.lisp:1.4 --- cl-unification/unifier.lisp:1.3 Fri May 20 17:19:53 2005 +++ cl-unification/unifier.lisp Tue Oct 25 21:17:33 2005 @@ -331,7 +331,9 @@
(let* ((n-vars (list-length vars)) (n-optionals (list-length optionals)) - (env (unify (subseq a 0 (list-length vars)) vars env)) + (env (unify (subseq a 0 (min ll (list-length vars))) + vars + env)) ) (when (and optionals (>= ll (+ n-vars n-optionals))) (setf env (unify (subseq a n-vars (+ n-vars n-optionals)) optionals env)))
cl-unification-cvs@common-lisp.net