From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Mark H Weaver Newsgroups: gmane.lisp.guile.devel Subject: Re: mark uniqueness Date: Tue, 24 Jan 2012 19:26:36 -0500 Message-ID: <87r4yor5j7.fsf@netris.org> References: <874nvw99za.fsf@pobox.com> <87zkdo7uf5.fsf@pobox.com> <87sjjbvs12.fsf@pobox.com> <87sjjaunme.fsf@netris.org> <87r4yurruv.fsf@pobox.com> <87obtyuj4k.fsf@netris.org> <871uqqpfoo.fsf@pobox.com> <87hazmrv15.fsf@netris.org> <87zkdem58t.fsf@pobox.com> <87d3a9mjcy.fsf@pobox.com> <874nvls04f.fsf@netris.org> <87mx9clu9p.fsf_-_@pobox.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1327451274 8453 80.91.229.12 (25 Jan 2012 00:27:54 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 25 Jan 2012 00:27:54 +0000 (UTC) Cc: Peter TB Brett , guile-devel@gnu.org To: Andy Wingo Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Wed Jan 25 01:27:49 2012 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1RpqiL-00011B-0G for guile-devel@m.gmane.org; Wed, 25 Jan 2012 01:27:49 +0100 Original-Received: from localhost ([::1]:34385 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RpqiK-0004gX-4C for guile-devel@m.gmane.org; Tue, 24 Jan 2012 19:27:48 -0500 Original-Received: from eggs.gnu.org ([140.186.70.92]:46306) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RpqiH-0004gH-CD for guile-devel@gnu.org; Tue, 24 Jan 2012 19:27:46 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RpqiF-0004cW-Ni for guile-devel@gnu.org; Tue, 24 Jan 2012 19:27:45 -0500 Original-Received: from world.peace.net ([96.39.62.75]:52434) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RpqiF-0004cI-IQ for guile-devel@gnu.org; Tue, 24 Jan 2012 19:27:43 -0500 Original-Received: from 209-6-91-212.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com ([209.6.91.212] helo=yeeloong) by world.peace.net with esmtpsa (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.69) (envelope-from ) id 1Rpqhz-0005xB-NK; Tue, 24 Jan 2012 19:27:27 -0500 In-Reply-To: <87mx9clu9p.fsf_-_@pobox.com> (Andy Wingo's message of "Tue, 24 Jan 2012 21:28:50 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.92 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 96.39.62.75 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:13666 Archived-At: Andy Wingo writes: > (define-syntax-rule (define-const x val) > (begin > (define t val) > (define-syntax x (identifier-syntax t)))) > > Here, `t' will have a fresh mark. > > Now, if in one compilation unit, I do: > > (define-const x 10) > > And in another, I do: > > (let ((t 20)) > x) => ? > > You would expect the result to be 20. But I think it could be 20, if > the marks on the two "t"s happened to collide. Ah yes, indeed you are right. Thanks for this explanation. I guess we need universally-unique gensyms for marks at least, regardless of which `local-eval' implementation we use. Thanks, Mark