Received: from mail.proteosys.com ([213.139.130.197]) by nummer-3.proteosys with Microsoft SMTPSVC(6.0.3790.3959); Wed, 25 Feb 2009 21:03:57 +0100 Received: by mail.proteosys.com (8.14.3/8.14.3) with ESMTP id n1PK6CGD026108 for ; Wed, 25 Feb 2009 21:06:13 +0100 Received: from listserv.uni-heidelberg.de (listserv.uni-heidelberg.de [129.206.100.94]) by relay2.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id n1PJxdZm022365 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 25 Feb 2009 20:59:39 +0100 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 n1PI8OCd015915; Wed, 25 Feb 2009 20:59:33 +0100 Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 15.5) with spool id 200364 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Wed, 25 Feb 2009 20:59:33 +0100 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 n1PJxXXi017943 for ; Wed, 25 Feb 2009 20:59:33 +0100 Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.126.187]) by relay2.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id n1PJxT1S022302 for ; Wed, 25 Feb 2009 20:59:32 +0100 Received: from morse.mittelbach-online.de (p54A8502A.dip.t-dialin.net [84.168.80.42]) by mrelayeu.kundenserver.de (node=mrelayeu8) with ESMTP (Nemesis) id 0ML31I-1LcPuj0bP7-0006HX; Wed, 25 Feb 2009 20:59:29 +0100 Received: by morse.mittelbach-online.de (Postfix, from userid 501) id 613F565B26; Wed, 25 Feb 2009 20:59:26 +0100 (CET) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit References: <49A453A1.9040000@morningstar2.co.uk> <49A4F031.50405@morningstar2.co.uk> <49A4FE4F.6040304@morningstar2.co.uk> <27990a880902250600v21963220v319195a504107625@mail.gmail.com> X-Mailer: VM 7.19 under Emacs 21.3.1 X-Provags-ID: V01U2FsdGVkX1/ihK+/xLgYXHAKlcgrc9m7XeChYeRGgbKRRkd nt6dePbNMN5CiTnpsAi60eVQkIrNTJaGZYo05bwUaxStsDir/D 9RhJzdHKu+MsjN7m4APND8ONMgxP4Tj X-Spam-Whitelist-Provider: Message-ID: <18853.41758.364009.703166@morse.mittelbach-online.de> Date: Wed, 25 Feb 2009 20:59:26 +0100 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Frank Mittelbach Subject: Re: Missing expl3 primitives To: LATEX-L@LISTSERV.UNI-HEIDELBERG.DE In-Reply-To: <27990a880902250600v21963220v319195a504107625@mail.gmail.com> Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: X-ProteoSys-SPAM-Score: -104 () RCVD_IN_DNSWL_MED,USER_IN_WHITELIST X-Scanned-By: MIMEDefang 2.65 on 213.139.130.197 Return-Path: owner-latex-l@LISTSERV.UNI-HEIDELBERG.DE X-OriginalArrivalTime: 25 Feb 2009 20:03:57.0678 (UTC) FILETIME=[316268E0:01C99784] Status: R X-Status: X-Keywords: X-UID: 5683 Will Robertson writes: > On Wed, Feb 25, 2009 at 6:46 PM, Joseph Wright > wrote: > > Over all, I think I prefer the first option, as these do all go > > together. (If we go for _every_, do we have a very short module > > "l3every" for this? If not, where do these things go?) > > I think I agree with you here. And I think it would be fine to define > these in l3toks for lack of any better location (they're not necessary > "early", so it doesn't really matter, I suppose; since they're token > registers then putting them in toks makes sense). well I guess I only partly agree. I don't think that at this point in time we should provide any expl interface to these \every... other than as \tex_every...D I really expect all (or nearly all) of them to used in higher-level interfaces, each in one specific module and that the low-level functionality outside these interfaces should not be accessed at all. This is precisely the issue that exists in LaTeX2e right now which has a very specific use for \everypar (but only a poorly developed inferface to access it by others. As a result packages mistakenly use \everpar directly only to find out that they die in certain situation or produce unexpected results. So yes, we do want a functionality like \everypar available, but if LaTeX3 implements a galley module (whether it be variant of galley2 or something leaner like xfmgalley or ...) then this functionality will not be provided through the primitive \everpar but through something else that fits that model. Same essentially for every other \every... command: "every end of file" might be useful and should be provided, but probably not through the primitive as the l3file might as well have something to do at the end of every file first (hijacking that lowlevel and instead providing something else for other packages). as i expect kernel (or near kernel) modules for all areas that offer \every... I would leave this alone as \tex_every_...:D for now if it turns out that one or the other is not going to be hijacked by the kernel we can in the end still offer it as programmer available, but not before frank