From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: David Kastrup Newsgroups: gmane.emacs.devel Subject: Re: Creating recursive customization types / widgets Date: 02 Dec 2003 13:46:01 +0100 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: References: <87smk4oyai.fsf@mail.jurta.org> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1070370336 4487 80.91.224.253 (2 Dec 2003 13:05:36 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Tue, 2 Dec 2003 13:05:36 +0000 (UTC) Cc: Juri Linkov , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Tue Dec 02 14:05:33 2003 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1ARADd-000770-00 for ; Tue, 02 Dec 2003 14:05:33 +0100 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1ARADc-0005NA-00 for ; Tue, 02 Dec 2003 14:05:32 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.24) id 1ARB9e-0002jY-OW for emacs-devel@quimby.gnus.org; Tue, 02 Dec 2003 09:05:30 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.24) id 1ARAsx-0007U9-EH for emacs-devel@gnu.org; Tue, 02 Dec 2003 08:48:15 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.24) id 1ARAsQ-0007Np-Pe for emacs-devel@gnu.org; Tue, 02 Dec 2003 08:48:13 -0500 Original-Received: from [217.80.157.147] (helo=localhost.localdomain) by monty-python.gnu.org with esmtp (TLSv1:DES-CBC3-SHA:168) (Exim 4.24) id 1ARAsN-0007Mc-T1 for emacs-devel@gnu.org; Tue, 02 Dec 2003 08:47:40 -0500 Original-Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by localhost.localdomain (8.12.8/8.12.8) with ESMTP id hB2Ck8Pe002848 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 2 Dec 2003 13:46:10 +0100 Original-Received: (from dak@localhost) by localhost.localdomain (8.12.8/8.12.8/Submit) id hB2Ck3Jn002844; Tue, 2 Dec 2003 13:46:03 +0100 Original-To: Per Abrahamsen In-Reply-To: Original-Lines: 31 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3.50 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.2 Precedence: list List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:18278 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:18278 Per Abrahamsen writes: > Juri Linkov writes: > > > So depending on whether you perceive a new widget as a whole structure > > (such as e.g. displayed by the `widget-browse-mode' in a widget > > buffer) or only as one element of such structure, I suggest you > > to name it either "tree" or "node". > > It is both. > > I'd like to reserve `tree' for a customize-browse ui widget, and node > is rather non-descriptive. Non-recursive datastructures can have > nodes as well. There is nothing in the widget as far as I can see that requires it to be used only for recursive data structures, even though that is its primary purpose. Its principal feature is that the type information is evaluated delayed or dynamically. It is conceivable, for example, that the exact type depends on the value of a different variable, or the availability of some feature at run-time. One could use that widget even in that case, and it would have nothing to do with recursion. So I think something like "lazy" or "dynamic" or "late" will be a better name than "recursive". Unless I am misunderstanding something here. -- David Kastrup, Kriemhildstr. 15, 44793 Bochum