From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: yzhh Newsgroups: gmane.emacs.devel Subject: Re: record-lisp.el - current status Date: Fri, 23 Nov 2007 13:50:52 +0800 Message-ID: References: <87tzndhmlb.fsf@jurta.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit X-Trace: ger.gmane.org 1195797128 6818 80.91.229.12 (23 Nov 2007 05:52:08 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 23 Nov 2007 05:52:08 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Nov 23 06:52:14 2007 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1IvRSX-0005Ov-5x for ged-emacs-devel@m.gmane.org; Fri, 23 Nov 2007 06:52:13 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IvRSJ-00046h-B3 for ged-emacs-devel@m.gmane.org; Fri, 23 Nov 2007 00:51:59 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IvRRe-0003Zc-Nq for emacs-devel@gnu.org; Fri, 23 Nov 2007 00:51:18 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IvRRb-0003WE-Bn for emacs-devel@gnu.org; Fri, 23 Nov 2007 00:51:17 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IvRRa-0003W1-T4 for emacs-devel@gnu.org; Fri, 23 Nov 2007 00:51:14 -0500 Original-Received: from main.gmane.org ([80.91.229.2] helo=ciao.gmane.org) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IvRRZ-0004ux-Vb for emacs-devel@gnu.org; Fri, 23 Nov 2007 00:51:14 -0500 Original-Received: from list by ciao.gmane.org with local (Exim 4.43) id 1IvRRS-00051b-Pl for emacs-devel@gnu.org; Fri, 23 Nov 2007 05:51:06 +0000 Original-Received: from 211.90.238.185 ([211.90.238.185]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 23 Nov 2007 05:51:06 +0000 Original-Received: from yezonghui by 211.90.238.185 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 23 Nov 2007 05:51:06 +0000 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 30 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 211.90.238.185 User-Agent: KNode/0.10.5 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:83936 Archived-At: Juri Linkov wrote: > I doubt that someone will want to customize the default conversion logic. > It is easier to fix the resulting Lisp code than to customize very complex > conversion rules. I think we should try to find the most useful rules and > hard-code them. When there is no clear preferable level of interactivity > to generate, then we could produce alternative Lisp code commented out in > the output, so the user could uncomment and use it if necessary. Sorry, I didn't make it clear that the default conversion IS now hard coded. The customization I mentioned refers to one that's done just before generation of code (on a per recording basis). It's meant to be simple but capture the most differentiating points on what kind of code the user may expect. In other words, the customization provides a better start point for further modification with a little effort. The user has the choice to directly modify the default version though. Currently I captures those points as variable usage: the user can choose to use a variable (strings, mark, etc) as an argument to the defun, or as a local variable, or as a constant (ie. not a var at all). This has the convenience that multiple places referring to the same variable all change accordingly at generation. For the same convenience I also provide var name and constant value as customization options. Maybe we need another phrase for the customization provided here, to avoid misunderstandings. -- regards, yzhh