From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: widgets with dynamic-choice Date: Mon, 18 Jul 2016 13:26:44 -0400 Message-ID: References: <87oa5usx9a.fsf@lifelogs.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1468864099 25592 80.91.229.3 (18 Jul 2016 17:48:19 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 18 Jul 2016 17:48:19 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Jul 18 19:48:07 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1bPCeE-0000s2-1Y for ged-emacs-devel@m.gmane.org; Mon, 18 Jul 2016 19:48:06 +0200 Original-Received: from localhost ([::1]:49392 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bPCeD-0006J8-5u for ged-emacs-devel@m.gmane.org; Mon, 18 Jul 2016 13:48:05 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:51033) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bPCHi-0001Ip-2x for emacs-devel@gnu.org; Mon, 18 Jul 2016 13:24:51 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bPCHb-0003iv-I5 for emacs-devel@gnu.org; Mon, 18 Jul 2016 13:24:46 -0400 Original-Received: from plane.gmane.org ([80.91.229.3]:47029) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bPCHb-0003ik-BU for emacs-devel@gnu.org; Mon, 18 Jul 2016 13:24:43 -0400 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1bPCHY-0007rc-2l for emacs-devel@gnu.org; Mon, 18 Jul 2016 19:24:40 +0200 Original-Received: from 69-165-156-121.dsl.teksavvy.com ([69.165.156.121]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 18 Jul 2016 19:24:40 +0200 Original-Received: from monnier by 69-165-156-121.dsl.teksavvy.com with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 18 Jul 2016 19:24:40 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 28 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 69-165-156-121.dsl.teksavvy.com User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) Cancel-Lock: sha1:3XEoNCWqWiE1xo0AluWCk+Avw8g= X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 80.91.229.3 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:205818 Archived-At: > * what should it look like? Just a callable symbol or a form or > something else? As you may know I abhor `eval`, so I'd rather not have a "form" there, but a function instead. > * when should the widget get updated? When we need to display it? > * how do we deal with outliers like a dynamic 100000 element list? The widget probably shouldn't try to do anything special for that. The same problem already exists with `choice` after all. > * how are errors handled? do we empty the list or go back to the last > good version? I wouldn't try to be clever here either. Just let the signal percolate. > * should this just be a way to provide 'choice and 'radio, or do we want > a more generic facility that can handle the other composite types? I think we should start with a dynamic version of `choice` and see from there if it can be easily generalized or not. Stefan