From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: Post-22.1 development? Date: Wed, 13 Jun 2007 12:22:55 -0400 Message-ID: References: <878xb05ras.fsf@stupidchicken.com> <200706101559.l5AFxBFb006829@oogie-boogie.ics.uci.edu> <86fy4yg62v.fsf@lola.quinscape.zz> <466ED07F.9000002@gnu.org> <85fy4wx1tb.fsf@lola.goethe.zz> <87ejkgkakm.fsf@stupidchicken.com> Reply-To: rms@gnu.org NNTP-Posting-Host: lo.gmane.org Content-Type: text/plain; charset=ISO-8859-15 X-Trace: sea.gmane.org 1181752106 17444 80.91.229.12 (13 Jun 2007 16:28:26 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 13 Jun 2007 16:28:26 +0000 (UTC) Cc: jasonr@gnu.org, monnier@iro.umontreal.ca, emacs-devel@gnu.org To: Chong Yidong Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Jun 13 18:28:24 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 1HyVhm-0003Xq-4H for ged-emacs-devel@m.gmane.org; Wed, 13 Jun 2007 18:28:22 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HyVhl-0004cF-It for ged-emacs-devel@m.gmane.org; Wed, 13 Jun 2007 12:28:21 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1HyVcX-0002NV-Id for emacs-devel@gnu.org; Wed, 13 Jun 2007 12:22:57 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1HyVcW-0002Mj-AF for emacs-devel@gnu.org; Wed, 13 Jun 2007 12:22:56 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HyVcW-0002Md-4u for emacs-devel@gnu.org; Wed, 13 Jun 2007 12:22:56 -0400 Original-Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1HyVcV-00042J-SF for emacs-devel@gnu.org; Wed, 13 Jun 2007 12:22:56 -0400 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1HyVcV-0001iK-EP; Wed, 13 Jun 2007 12:22:55 -0400 In-reply-to: <87ejkgkakm.fsf@stupidchicken.com> (message from Chong Yidong on Tue, 12 Jun 2007 19:38:33 -0400) X-detected-kernel: 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:72780 Archived-At: There are two clean ways to do this is: (i) extend process-environment so that if a symbol occurs in the list, as opposed to a string, that symbol names a list whose elements are to be used (as though they had been inserted in process-environment). Then the final element for all default values of process-environment would include the symbol `global-process-environment'; or (ii) extend process-environment so that an element of `t' means "the global value of this variable" (similar to hook variables). These are more elegant, but I am not sure it matters in practice. Either of these approaches would be backward compatible for third-party than the shared-tail idea, but IMHO the gain in cleanliness more than makes up for it. I don't think so, and the reason is that this won't clean up the code in Lisp programs at all. On the contrary, it would complicate them. In other words, elegance of the mechanism is not the same thing as simplicity of the user code. We use method ii for hooks, but the complexity is hidden inside two standard functions.