From ... Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news.tele.dk!small.news.tele.dk!129.240.148.23!uio.no!nntp.uio.no!ifi.uio.no!not-for-mail From: Erik Naggum Newsgroups: comp.lang.lisp Subject: Re: Using backquote Date: 03 Oct 2002 10:43:39 +0000 Organization: Naggum Software, Oslo, Norway Lines: 23 Message-ID: <3242630619208550@naggum.no> References: <87zntxt10v.fsf@gruk.tech.ensign.ftech.net> <2hr8f8gbnp.fsf@vserver.cs.uit.no> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Trace: maud.ifi.uio.no 1033641819 5141 129.240.65.5 (3 Oct 2002 10:43:39 GMT) X-Complaints-To: abuse@ifi.uio.no NNTP-Posting-Date: 3 Oct 2002 10:43:39 GMT Mail-Copies-To: never User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 Xref: archiver1.google.com comp.lang.lisp:42821 * Frode Vatvedt Fjeld | But how about (some variation of) this scheme: | | (defun connect-to-server (servername &rest init-args &key (port 119)) | (let ((stream (open-nntp-stream servername port))) | (when stream | (let ((server (apply #'make-instance 'server | :name servername | :stream stream | :port port | (remf init-args :port)))) | ...)))) This `remf´ things seems to go by without comment, so it must mean that several people are not aware that only the first keyword-value pair that matches is actually used. Just passing `init-args´ alone is just fine, and avoids the problem that you screw with your caller. -- Erik Naggum, Oslo, Norway Act from reason, and failure makes you rethink and study harder. Act from faith, and failure makes you blame someone and push harder.