From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Marius Vollmer Newsgroups: gmane.lisp.guile.devel Subject: Re: Value history Date: 08 Aug 2002 19:46:19 +0200 Sender: guile-devel-admin@gnu.org Message-ID: References: <20020805031214.GA29032@nsx.internal.hewgill.net> NNTP-Posting-Host: localhost.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1028828842 12851 127.0.0.1 (8 Aug 2002 17:47:22 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Thu, 8 Aug 2002 17:47:22 +0000 (UTC) Cc: guile-devel@gnu.org Return-path: Original-Received: from fencepost.gnu.org ([199.232.76.164]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 17crNY-0003L9-00 for ; Thu, 08 Aug 2002 19:47:21 +0200 Original-Received: from localhost ([127.0.0.1] helo=fencepost.gnu.org) by fencepost.gnu.org with esmtp (Exim 3.35 #1 (Debian)) id 17crOG-0007MI-00; Thu, 08 Aug 2002 13:48:04 -0400 Original-Received: from krusty.dt.e-technik.uni-dortmund.de ([129.217.163.1] helo=mail.dt.e-technik.uni-dortmund.de) by fencepost.gnu.org with esmtp (Exim 3.35 #1 (Debian)) id 17crNQ-0007Ik-00 for ; Thu, 08 Aug 2002 13:47:12 -0400 Original-Received: from burns.dt.e-technik.uni-dortmund.de (burns.dt.e-technik.uni-dortmund.de [129.217.163.19]) by mail.dt.e-technik.uni-dortmund.de (Postfix) with ESMTP id 89794A3831; Thu, 8 Aug 2002 19:47:11 +0200 (CEST) Original-Received: by burns.dt.e-technik.uni-dortmund.de (Postfix, from userid 520) id EA7F12625A; Thu, 8 Aug 2002 19:46:20 +0200 (CEST) Original-To: Greg Hewgill In-Reply-To: <20020805031214.GA29032@nsx.internal.hewgill.net> Original-Lines: 31 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.1 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:1016 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.devel:1016 Greg Hewgill writes: > Below is a patch for the "Value history" idea. This diff is against > the CVS head. Excellent! Thanks! > If anybody has any suggestions for improvement, let me know. I get > the feeling that the eval statement might not be the best way to do > the global $ assignment, but it was the only way I could find to > make it work. Yes, eval is not the most direct way to do what you want. You can also use (module-define! (current-module) (string->symbol ...) result) I think it is also important to have a way to switch the history off, and to limit it to a maximum number of levels. Otherwise, an arbitrary amount of uncollectable garbage might built up without the user being aware of it. You can use (module-remove! (current-module) (module-local-variable (current-module) sym)) to undefine variables in the current module. Might be worth to define 'module-undefine!'... If you could make these changes, that would be great! _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://mail.gnu.org/mailman/listinfo/guile-devel