From mboxrd@z Thu Jan 1 00:00:00 1970 From: Achim Gratz Subject: Re: var `date' lacks a prefix warnings Date: Fri, 27 Apr 2012 20:53:05 +0200 Message-ID: <87mx5xvwfi.fsf@Rainer.invalid> References: Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([208.118.235.92]:41002) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SNqIH-00041o-Pg for emacs-orgmode@gnu.org; Fri, 27 Apr 2012 14:53:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SNqIF-0006zn-Rp for emacs-orgmode@gnu.org; Fri, 27 Apr 2012 14:53:25 -0400 Received: from plane.gmane.org ([80.91.229.3]:52290) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SNqIF-0006zH-Jt for emacs-orgmode@gnu.org; Fri, 27 Apr 2012 14:53:23 -0400 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1SNqIC-0005DF-KC for emacs-orgmode@gnu.org; Fri, 27 Apr 2012 20:53:20 +0200 Received: from pd9eb5056.dip.t-dialin.net ([217.235.80.86]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 27 Apr 2012 20:53:20 +0200 Received: from Stromeko by pd9eb5056.dip.t-dialin.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 27 Apr 2012 20:53:20 +0200 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org Martyn Jago writes: > Regarding the remaining Org-mode `lacks a prefix' warnings and > particularly in light of the recent message on emacs.devel [1] would it > not be sufficient to simply alias date and entry locally: > > (defvaralias 'org--date 'date) > (defvaralias 'org--entry 'entry) That doesn't work, AFAIK: defvaralias binds the symbol (it looks up what is behind the symbol and creates another symbol for it), but dynamic scoping does not (you look up what's behind the symbol each time you use it). The problem is that when a symbol gets dynamically scoped it cannot be used as a lexical symbol after that, so any code that uses "date" and "entry" after the defvar doesn't get a lexcial binding. You would need a language construct that would let you capture a symbol dynamically, internalize it (in essence it would be renaming that symbol in some scope) and then erase all traces of that symbol having been symbolically scoped so that it can be used lexically again. I don't think anything like that currently exists. > p.s. I should point out that my personal view is that a serious well > maintained Emacs library such as Org-mode should have a zero warning > policy for official releases. Here's a problem that originates outside of our control. At the very least, we can't fix it just in org. Regards, Achim. -- +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+ Factory and User Sound Singles for Waldorf rackAttack: http://Synth.Stromeko.net/Downloads.html#WaldorfSounds