From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nicolas Goaziou Subject: Re: [RFC] Change some defcustoms into defcont Date: Tue, 22 Oct 2013 11:52:25 +0200 Message-ID: <87zjq1tyxy.fsf@gmail.com> References: <871u3g5nwx.fsf@gmail.com> <87mwm33sv1.fsf@gmail.com> <87a9i2522c.fsf@gmail.com> <7839A647-8D17-47A9-A65D-5FD7110ED082@gmail.com> <874n8avenk.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:35481) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VYYdT-0000bT-4E for emacs-orgmode@gnu.org; Tue, 22 Oct 2013 05:52:31 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VYYdK-0006XE-ML for emacs-orgmode@gnu.org; Tue, 22 Oct 2013 05:52:23 -0400 Received: from mail-wg0-x230.google.com ([2a00:1450:400c:c00::230]:62553) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VYYdK-0006Wq-Fr for emacs-orgmode@gnu.org; Tue, 22 Oct 2013 05:52:14 -0400 Received: by mail-wg0-f48.google.com with SMTP id b13so7663700wgh.3 for ; Tue, 22 Oct 2013 02:52:13 -0700 (PDT) In-Reply-To: (Carsten Dominik's message of "Tue, 22 Oct 2013 09:50:49 +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: Carsten Dominik Cc: Org Mode List Hello, > You also said things like > >> That's exactly the point of the defconst: you can still modify the >> variable, but it sends a strong message to the user. Also, it's not >> about deprecation: code base should still rely on these variables. > > so maybe I picked one interpretation over the other. I don't see any contradiction. You can modify a defconst, but the strong message is "you are not supposed to do that". I didn't suggest modifying these variables was expected. Anyway, I acknowledge I wasn't very clear. > Yes, sorry. By "nothing" I mean nothing we cannot achieve with > documentation and a :set method. This will not fix the bug. > Since we will still rely on the variables, the advantage for > maintenance is something I do not see. As a developer, you have to keep in mind that the string might be changed. Sometimes, it's easy to forget you cannot hardcode it, e.g. when writing a search regexp. I have done a similar mistake in ox-taskjuggler.el, where I expect the effort property to be named ":EFFORT:". More things to remember, more potential bugs, more maintenance efforts. > Cache friendliness I see, but I would think that if someone changes > these variables, they will not keep changing them. Of course. I shouldn't have talked about cache since it makes me sound like a lazy person. I can work around the cache problem. Again my main concern was to move to a proper, Emacs-independent, /minimal/ core syntax, i.e., to define the "Org format". For example, at the moment, external tools cannot rely on "SCHEDULED:" string to write even a basic Org file, because "SCHEDULED:" doesn't clearly belong to the syntax and, therefore, might be incompatible with some configurations. Regards, -- Nicolas Goaziou