From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Dirk Herrmann Newsgroups: gmane.lisp.guile.devel Subject: Re: memoization and conditional defines Date: Sat, 9 Nov 2002 09:19:09 +0100 (CET) Sender: guile-devel-admin@gnu.org Message-ID: References: <0211072024311M.07034@locke.free-expression.org> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Trace: main.gmane.org 1036831014 13975 80.91.224.249 (9 Nov 2002 08:36:54 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Sat, 9 Nov 2002 08:36:54 +0000 (UTC) Cc: guile-devel@gnu.org Return-path: Original-Received: from monty-python.gnu.org ([199.232.76.173]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 18AR6q-0003dH-00 for ; Sat, 09 Nov 2002 09:36:52 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10) id 18AR4R-0006OU-00; Sat, 09 Nov 2002 03:34:23 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10) id 18AQqX-0003uK-00 for guile-devel@gnu.org; Sat, 09 Nov 2002 03:20:01 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10) id 18AQq1-0003Tv-00 for guile-devel@gnu.org; Sat, 09 Nov 2002 03:20:00 -0500 Original-Received: from sallust.ida.ing.tu-bs.de ([134.169.132.52]) by monty-python.gnu.org with esmtp (Exim 4.10) id 18AQq0-0003TI-00 for guile-devel@gnu.org; Sat, 09 Nov 2002 03:19:29 -0500 Original-Received: from localhost (dirk@localhost) by sallust.ida.ing.tu-bs.de (8.9.3+Sun/8.9.1) with ESMTP id JAA22176; Sat, 9 Nov 2002 09:19:09 +0100 (CET) Original-To: Lynn Winebarger , Bruce Korb In-Reply-To: <0211072024311M.07034@locke.free-expression.org> Errors-To: guile-devel-admin@gnu.org X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.0.11 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Developers list for Guile, the GNU extensibility library List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.lisp.guile.devel:1669 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.devel:1669 On Thu, 7 Nov 2002, Lynn Winebarger wrote: > On Thursday 07 November 2002 19:46, Bruce Korb wrote: > > > > It will be a bit of a nuisance when the (if (define )) > > stuff chokes, but I would expect a sensible error message that will > > lead me to wrapping that stuff in an eval once its encountered, yes? > > Depends on how it's implemented. It doesn't have to be an error > per se, but the _binding_ (as opposed to the side-effecting) of the > variable would happen before the test was evaluated. That's probably > _not_ the behaviour you'd expect from that construct. > If it's made an error, I don't know what the actual error message > would be. There are only a few types of places defines are really > legitimate: at the top level, at the head of a body, inside a begin > clause in any other legitimate location (recursively) - but only > before non-defines in a body occurence (following macro expansion). If we are going to disallow defininitions except when on the real top level, then it is easy to issue an error message when something like (if (define )) is encountered. Guile could, for example, issue an error message like "bad define placement" or even "bad define placement. Read guile's documentation about definitions to understand why this is not allowed." or something similar. I hope this would be good enough for Bruce's purposes. Best regards, Dirk Herrmann _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://mail.gnu.org/mailman/listinfo/guile-devel