From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: Emacs Lisp and Guile Date: Fri, 9 Aug 2002 10:39:37 -0600 (MDT) Sender: emacs-devel-admin@gnu.org Message-ID: <200208091639.g79GdbQW003675@santafe.santafe.edu> References: <200207200035.g6K0ZAb27891@aztec.santafe.edu> <200207212015.g6LKF4c00874@aztec.santafe.edu> <200207251807.g6PI75d07615@aztec.santafe.edu> <874renlito.fsf@zagadka.ping.de> <200207271853.g6RIre710837@aztec.santafe.edu> <200207310554.g6V5ssc16508@aztec.santafe.edu> <200208021743.g72HhkX01596@aztec.santafe.edu> <200208071424.g77EO0k03146@wijiji.santafe.edu> Reply-To: rms@gnu.org NNTP-Posting-Host: localhost.gmane.org X-Trace: main.gmane.org 1028911171 3073 127.0.0.1 (9 Aug 2002 16:39:31 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Fri, 9 Aug 2002 16:39:31 +0000 (UTC) Cc: neil@ossau.uklinux.net, raeburn@raeburn.org, emacs-devel@gnu.org Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 17dCnS-0000nS-00 for ; Fri, 09 Aug 2002 18:39:30 +0200 Original-Received: from fencepost.gnu.org ([199.232.76.164]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17dDA6-0002MM-00 for ; Fri, 09 Aug 2002 19:02:55 +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 17dCoD-0005tr-00; Fri, 09 Aug 2002 12:40:17 -0400 Original-Received: from pele.santafe.edu ([192.12.12.119]) by fencepost.gnu.org with esmtp (Exim 3.35 #1 (Debian)) id 17dCnc-0005kC-00; Fri, 09 Aug 2002 12:39:41 -0400 Original-Received: from santafe.santafe.edu (santafe [192.12.12.2]) by pele.santafe.edu (8.11.6+Sun/8.11.6) with ESMTP id g79Gdr525315; Fri, 9 Aug 2002 10:39:53 -0600 (MDT) Original-Received: from santafe.santafe.edu (localhost [127.0.0.1]) by santafe.santafe.edu (8.12.2+Sun/8.12.5) with ESMTP id g79GdbKK003678; Fri, 9 Aug 2002 10:39:37 -0600 (MDT) Original-Received: (from rms@localhost) by santafe.santafe.edu (8.12.2+Sun/8.12.2/Submit) id g79GdbQW003675; Fri, 9 Aug 2002 10:39:37 -0600 (MDT) Original-To: marius.vollmer@uni-dortmund.de In-Reply-To: (message from Marius Vollmer on 08 Aug 2002 18:35:37 +0200) Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.11 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:6402 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:6402 I think we might agree anyway: from a general, low-level Scheme implementation point of view, Elisp variables require 'arbitrary' code to be run when they are accessed. They don't require this--there are other ways to implement this feature in and on Guile. It is true that if Guile supports running arbitrary code for variable access, that would provide a basis on which to implement the Emacs Lisp variable features. But I think that running arbitrary code is not good design--variables should be variables, not act like functions. Can you look for some way to implement forwarding facilities in Guile? If I remember correctly, TCL can sent out notifications when the value of a variable changes. That feature can be useful, but it is not sufficient for this job. When a variable is forwarded to C code, the idea is that C code can change the value at any time. Each reference to the Scheme variable needs to look in the C variable.