From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Neil Jerram Newsgroups: gmane.lisp.guile.user Subject: Re: Using a macro with FOLD alters FOLD procedure! Date: Sat, 23 Apr 2005 21:18:33 +0100 Message-ID: <426AAD99.2080700@ossau.uklinux.net> References: <56190b6c05041511382ae259d@mail.gmail.com> <1113594648.3650.8.camel@cslabpc3.evansville.edu> <56190b6c05041515205fd8b6a@mail.gmail.com> <4260FB26.4080607@ossau.uklinux.net> <87r7h8q5dl.fsf@trouble.defaultvalue.org> <426749AD.3090403@ossau.uklinux.net> <878y3b93np.fsf@zip.com.au> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1114287605 24682 80.91.229.2 (23 Apr 2005 20:20:05 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Sat, 23 Apr 2005 20:20:05 +0000 (UTC) Cc: guile-user@gnu.org Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Sat Apr 23 22:20:01 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1DPR6O-0004pI-JU for guile-user@m.gmane.org; Sat, 23 Apr 2005 22:19:45 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DPRBZ-0001OA-LO for guile-user@m.gmane.org; Sat, 23 Apr 2005 16:25:05 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1DPRBS-0001O3-SU for guile-user@gnu.org; Sat, 23 Apr 2005 16:24:58 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1DPRBR-0001Nr-Bo for guile-user@gnu.org; Sat, 23 Apr 2005 16:24:58 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DPRBR-0000N4-AL for guile-user@gnu.org; Sat, 23 Apr 2005 16:24:57 -0400 Original-Received: from [80.84.72.33] (helo=mail3.uklinux.net) by monty-python.gnu.org with esmtp (Exim 4.34) id 1DPR8S-0003mX-Pa for guile-user@gnu.org; Sat, 23 Apr 2005 16:21:52 -0400 Original-Received: from laruns (host81-130-189-32.in-addr.btopenworld.com [81.130.189.32]) by mail3.uklinux.net (Postfix) with ESMTP id 199EF409FB9; Sat, 23 Apr 2005 20:18:53 +0000 (UTC) Original-Received: from [127.0.0.1] (laruns [127.0.0.1]) by laruns (Postfix) with ESMTP id 9CBB86FED2; Sat, 23 Apr 2005 21:18:33 +0100 (BST) User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.6) Gecko/20050324 Debian/1.7.6-1 X-Accept-Language: en Original-To: Kevin Ryde In-Reply-To: <878y3b93np.fsf@zip.com.au> X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-user-bounces+guile-user=m.gmane.org@gnu.org Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.user:4409 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.user:4409 Kevin Ryde wrote: > I suppose it depends if a macro should be a first class object to be > thrown around (or do I misunderstand?). > > I've been gradually converting srfi-1 procs to C, which has the side > effect of checking the procs are actual procedures. I suppose there > must be plenty of ordinary application code passing procedures around > in exactly the same way that's vulnerable to memoizing macros. > > (Could a memoized form check it's got the same macro as originally > expanded, as a safety check? Or do I misunderstand again?) > I think you understand fine - to the extent that I understand myself, anyway. For reference, here's the first message in the 2002 thread that I mentioned: http://lists.gnu.org/archive/html/guile-devel/2002-01/msg00030.html The key mail in this thread is probably Marius's one. I have to say, though, that I don't yet understand how Marius's solution would solve the problem in the case of passing a macro to fold. Regards, Neil _______________________________________________ Guile-user mailing list Guile-user@gnu.org http://lists.gnu.org/mailman/listinfo/guile-user