[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Proposal #9 Status: Variable Name Conflicts
- To: Jeff Barnett <jbarnett@NRTC.ARPA>
- Subject: Re: Proposal #9 Status: Variable Name Conflicts
- From: Hadden@HI-MULTICS.ARPA
- Date: Fri, 1 Aug 86 09:46 CDT
- Acknowledge-to: Hadden@HI-MULTICS.ARPA
- Cc: common-lisp@SU-AI.ARPA
- In-reply-to: Message of 30 Jul 86 15:55 CDT from "Jeff Barnett"
actually, i think it can be done in order N. the idea is to scan down
the list checking each symbol's property list for a flag. if it's not
there, put it there; if it is, you've already seen it. the following
(untested) code may give you the idea:
(defun dup-p (arg-list)
(do ((l arg-list (cdr l))
(foo (gensym)))
((null l) (mapc #'(lambda (x) (remprop x foo)) arg-list) nil)
(if (get (car l) foo)
(progn (mapc #'(lambda (x) (remprop x foo)) arg-list)
(return t))
(setf (get (car l) foo) t))))
-geo