Received: from mail.proteosys.com ([213.139.130.197]) by nummer-3.proteosys with Microsoft SMTPSVC(5.0.2195.6713); Wed, 13 Oct 2004 09:24:33 +0200 Received: by mail.proteosys.com (8.12.10/8.12.2) with ESMTP id i9D7PBrT017699 for ; Wed, 13 Oct 2004 09:25:12 +0200 Received: from listserv.uni-heidelberg.de (listserv.uni-heidelberg.de [129.206.119.176]) by relay.uni-heidelberg.de (8.12.10/8.12.10) with ESMTP id i9D7JE4i023402; Wed, 13 Oct 2004 09:19:15 +0200 (MET DST) MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----_=_NextPart_001_01C4B0F5.AF6F4E80" Received: from listserv (listserv.uni-heidelberg.de [129.206.119.176]) by listserv.uni-heidelberg.de (8.12.7/8.12.7/SuSE Linux 0.6) with ESMTP id i9D7HkRV011246; Wed, 13 Oct 2004 09:18:01 +0200 Received: from LISTSERV.UNI-HEIDELBERG.DE by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 1.8e) with spool id 667239 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Wed, 13 Oct 2004 09:18:01 +0200 Received: from relay.uni-heidelberg.de (relay.uni-heidelberg.de [129.206.100.212]) by listserv.uni-heidelberg.de (8.12.7/8.12.7/SuSE Linux 0.6) with ESMTP id i9D7I1RP007459 for ; Wed, 13 Oct 2004 09:18:01 +0200 Received: from babbage.uvt.nl (babbage.uvt.nl [137.56.247.14]) by relay.uni-heidelberg.de (8.12.10/8.12.10) with ESMTP id i9D7IO4i023227 for ; Wed, 13 Oct 2004 09:18:25 +0200 (MET DST) Received: from pi2326 (pi2326.uvt.nl [137.56.45.40]) by babbage.uvt.nl (8.12.10/8.12.10/Debian-5-UvT-15) with SMTP id i9D7IO2o021046 for ; Wed, 13 Oct 2004 09:18:24 +0200 In-Reply-To: <16748.16453.482612.266244@istrati.mittelbach-online.de> Return-Path: X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2911.0) X-MimeOLE: Produced By Microsoft Exchange V6.5 X-OriginalArrivalTime: 13 Oct 2004 07:24:33.0975 (UTC) FILETIME=[B0041470:01C4B0F5] X-Virus-Scanned: by amavisd-new X-Scanned-By: MIMEDefang at proteosys.com X-Spam-Status: No, hits=-0.9, required=5.0 tests=BAYES_10 X-Spam-Level: - x-spam-flag: No X-ProteoSys-SPAM-Score: 0 () x-spam-cookie: 7fe0d6c520d709aa7ccb73fb2e6ef14fb9fe7d96 Content-class: urn:content-classes:message Subject: Re: naming conventions LaTeX3 Date: Wed, 13 Oct 2004 08:18:53 +0100 Message-ID: A X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: naming conventions LaTeX3 Thread-Index: AcSw9bBEnmDReNNSQpiR0gmlRMhOJQ== From: "Hendri Adriaens" Sender: "Mailing list for the LaTeX3 project" To: Reply-To: "Mailing list for the LaTeX3 project" Status: R X-Status: X-Keywords: X-UID: 4820 This is a multi-part message in MIME format. ------_=_NextPart_001_01C4B0F5.AF6F4E80 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi Frank, > - the strength of the exp module, e.g. the fact that many of the > expansion > tricks that typically a TeX source vanish, e.g. > > \let:NN \foo \bar let one token to another token > > \let:cc {foo-#1}{bar-#2} let two tokens both generated from strings = -> > csnames to each other Yes, this is indeed very useful. > now how often do you need :w commands? > > if you look at the low-level module code that comes with expl3 > itself or if > you think about parsing applications like xkeyval one might get > the impression > that this happens very often Yep :) > but in any other circumstances the > number is very > very low indeed. > > my (not quite finished) conversion of the xor package has used on > 9 lines some > :w macros (all of which are actually fixes to expl3 code) and the = whole > package has current 7947 code lines (excluding documentation) > > template.sty (in the converted version) has 26 left out of 526 > code lines most > of which are stuff like > > \exp_after:NN \show \cs:w ... \cs_end: > > where simply the functionality in epxl3 is missing ,ie where the > correction > form would be something like > > \cs_show:N ( =3D \show) > > and the above would then turn into > > \cs_show:c {...} I see. Thanks for this clarification. > so all in all my experience is that this is only really used in the = very > low-level modules that set up data structures like queues and > those that deal > with special parsing of special input syntax Indeed, with parsing stuff, one might need a lot of :w, but it is good to know that this is not necessary too much in actual applications, which is important to make the system informative. Thanks for your detailed explanation. Best regards, -Hendri. ------_=_NextPart_001_01C4B0F5.AF6F4E80 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Re: naming conventions LaTeX3

Hi Frank,

>  - the strength of the exp module, e.g. the = fact that many of the
> expansion
>    tricks that typically a TeX = source vanish, e.g.
>
>    \let:NN \foo = \bar        let one token to another = token
>
>    \let:cc {foo-#1}{bar-#2} let = two tokens both generated from strings ->
>          =             &= nbsp;      csnames to each other

Yes, this is indeed very useful.

> now how often do you need :w commands?
>
> if you look at the low-level module code that = comes with expl3
> itself or if
> you think about parsing applications like = xkeyval one might get
> the impression
> that this happens very often

Yep :)

> but in any other circumstances the
> number is very
> very low indeed.
>

> my (not quite finished) conversion of the xor = package has used on
> 9 lines some
> :w macros  (all of which are actually fixes = to expl3 code) and the whole
> package has current 7947 code lines (excluding = documentation)
>
> template.sty (in the converted version) has 26 = left out of 526
> code lines most
> of which are stuff like
>
> \exp_after:NN \show \cs:w ... \cs_end:
>
> where simply the functionality in epxl3 is = missing ,ie where the
> correction
> form would be something like
>
>  \cs_show:N      ( = =3D \show)
>
> and the above would then turn into
>
>  \cs_show:c {...}

I see. Thanks for this clarification.

> so all in all my experience is that this is only = really used in the very
> low-level modules that set up data structures = like queues and
> those that deal
> with special parsing of special input = syntax

Indeed, with parsing stuff, one might need a lot of = :w, but it
is good to know that this is not necessary too much = in actual
applications, which is important to make the system = informative.

Thanks for your detailed explanation. Best = regards,
-Hendri.

------_=_NextPart_001_01C4B0F5.AF6F4E80--