Received: from mx0.gmx.net (mx0.gmx.net [213.165.64.100]) by h1439878.stratoserver.net (8.14.2/8.14.2/Debian-2build1) with SMTP id p8J7Gij8026019 for ; Mon, 19 Sep 2011 09:16:45 +0200 Received: (qmail 1513 invoked by alias); 19 Sep 2011 07:16:38 -0000 Delivered-To: GMX delivery to rainer.schoepf@gmx.net Received: (qmail invoked by alias); 19 Sep 2011 07:16:38 -0000 Received: from relay.uni-heidelberg.de (EHLO relay.uni-heidelberg.de) [129.206.100.212] by mx0.gmx.net (mx007) with SMTP; 19 Sep 2011 09:16:38 +0200 Received: from listserv.uni-heidelberg.de (listserv.uni-heidelberg.de [129.206.100.94]) by relay.uni-heidelberg.de (8.14.1/8.14.1) with ESMTP id p8J7Ebb9001042 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 19 Sep 2011 09:14:37 +0200 Received: from listserv.uni-heidelberg.de (localhost.localdomain [127.0.0.1]) by listserv.uni-heidelberg.de (8.13.1/8.13.1) with ESMTP id p8IM1PLM018389; Mon, 19 Sep 2011 09:14:36 +0200 Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 16.0) with spool id 1592920 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Mon, 19 Sep 2011 09:14:36 +0200 Received: from relay2.uni-heidelberg.de (relay2.uni-heidelberg.de [129.206.210.211]) by listserv.uni-heidelberg.de (8.13.1/8.13.1) with ESMTP id p8J7EaLF023330 for ; Mon, 19 Sep 2011 09:14:36 +0200 Received: from mail-fx0-f49.google.com (mail-fx0-f49.google.com [209.85.161.49]) by relay2.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id p8J7EWKZ002249 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=FAIL) for ; Mon, 19 Sep 2011 09:14:36 +0200 Received: by fxg7 with SMTP id 7so5289671fxg.22 for ; Mon, 19 Sep 2011 00:14:32 -0700 (PDT) MIME-Version: 1.0 Received: by 10.223.34.152 with SMTP id l24mr4555093fad.146.1316416472233; Mon, 19 Sep 2011 00:14:32 -0700 (PDT) Received: by 10.152.22.225 with HTTP; Mon, 19 Sep 2011 00:14:32 -0700 (PDT) References: <4E692829.2000003@morningstar2.co.uk> <4E75B860.40106@morningstar2.co.uk> <4E75F68E.80004@morningstar2.co.uk> Content-Type: text/plain; charset=ISO-8859-1 X-Spam-Whitelist: Message-ID: Date: Mon, 19 Sep 2011 02:14:32 -0500 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Kevin Godby Subject: Re: Removal of previously-notified functions To: LATEX-L@listserv.uni-heidelberg.de In-Reply-To: <4E75F68E.80004@morningstar2.co.uk> Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: X-GMX-Antispam: 0 (BackTrace mail analyze); Detail=5D7Q89H36p4L00VTXC6D4q0N+AH0PUCnGL2vqOgpaBYL16oitsMrgDt/NQNpSCZFFjDOy 97xb7Zpf+wZnd5ZXNcvLDXR3Wg3wRjdQbwEMh8=V1; X-Resent-By: Forwarder X-Resent-For: rainer.schoepf@gmx.net X-Resent-To: rainer@rainer-schoepf.de Status: R X-Status: X-Keywords: X-UID: 6875 Hello. On Sun, Sep 18, 2011 at 8:47 AM, Joseph Wright wrote: > On 18/09/2011 10:53, Philipp Stephani wrote: >> I would indeed propose having both _new:N and _new:Nn for all variable >> types. Adding them should not be a big deal (since all parts are >> already there), but simulating them manually is quite cumbersome, >> especially because variable names tend to be quite long due to the >> lack of namespaces: >> >> \int_new:N \l_package_foo_bar_int >> \int_set:Nn \l_package_foo_bar_int { 1 + 2 } > > I'm still not sure how many real use cases there are where these are not > either constants or better handled as keyval-assigned variables (where > 'define' and 'set' are separate). I'm inclined to agree with Philipp. Skimming through the existing LaTeX 2e packages, it looks like a lot of \newlength lines are followed immediately by setting a default value. In some cases, commands are provided to modify the length and in other cases, the document author is expected to \setlength them in their preamble. Most of the cases that I spot-checked were non-constant values. I'm not sure what the LaTeX 3 plans are for the keyval stuff is, though. How would you handle this situation using the LaTeX 3 coding style? On the topic of constants: Aside from the c_ prefix indicating to the reader/author that the value is to be constant, is there anything that prevents one from changing the value? How much overhead would it be to have the LaTeX 3 macros check for the c_ prefix and throw an error if you try to modify the value? As for the iow_open question, I think that most languages will overwrite the existing file by default. If you want to provide an option for appending to the file, I'd create an ioa_open:N macro. --Kevin Godby