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 o1B0euo0026390 for ; Thu, 11 Feb 2010 01:40:57 +0100 Received: (qmail 14666 invoked by alias); 11 Feb 2010 00:40:51 -0000 Delivered-To: GMX delivery to rainer.schoepf@gmx.net Received: (qmail invoked by alias); 11 Feb 2010 00:40:51 -0000 Received: from relay.uni-heidelberg.de (EHLO relay.uni-heidelberg.de) [129.206.100.212] by mx0.gmx.net (mx076) with SMTP; 11 Feb 2010 01:40:51 +0100 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 o1B0bjkL005025 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 11 Feb 2010 01:37:45 +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 o1AN16ep007776; Thu, 11 Feb 2010 01:37:43 +0100 Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 16.0) with spool id 377236 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Thu, 11 Feb 2010 01:37:43 +0100 Received: from relay.uni-heidelberg.de (relay.uni-heidelberg.de [129.206.100.212]) by listserv.uni-heidelberg.de (8.13.1/8.13.1) with ESMTP id o1B0bhxH014313 for ; Thu, 11 Feb 2010 01:37:43 +0100 Received: from mail-yx0-f192.google.com (mail-yx0-f192.google.com [209.85.210.192]) by relay.uni-heidelberg.de (8.14.1/8.14.1) with ESMTP id o1B0bcSx004942 for ; Thu, 11 Feb 2010 01:37:43 +0100 Received: by yxe30 with SMTP id 30so636224yxe.25 for ; Wed, 10 Feb 2010 16:37:37 -0800 (PST) Received: by 10.101.131.20 with SMTP id i20mr1425981ann.165.1265848657676; Wed, 10 Feb 2010 16:37:37 -0800 (PST) Received: from ?129.127.15.244? ([129.127.15.244]) by mx.google.com with ESMTPS id 9sm689610ywe.26.2010.02.10.16.37.35 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 10 Feb 2010 16:37:36 -0800 (PST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Apple Message framework v1077) References: <4b6c8efc$0$6573$9b4e6d93@newsspool3.arcor-online.net> <09bdfa24-c77c-4f37-8c89-809befb28934@u41g2000yqe.googlegroups.com> <4b6cc60a$0$6581$9b4e6d93@newsspool3.arcor-online.net> <227E5CB1-DBE8-4956-94C6-9B9FD1B15A07@yahoo.de> X-Mailer: Apple Mail (2.1077) X-Spam-Whitelist: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by listserv.uni-heidelberg.de id o1B0bhxH014314 Message-ID: <4ED495B0-139F-4D45-9AE8-A241D9ED0E53@gmail.com> Date: Thu, 11 Feb 2010 11:07:30 +1030 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Will Robertson Subject: Re: Newbie Question on LaTeX 3 Programming To: LATEX-L@listserv.uni-heidelberg.de In-Reply-To: <227E5CB1-DBE8-4956-94C6-9B9FD1B15A07@yahoo.de> Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: X-GMX-Antispam: 0 (Mail was not recognized as spam); Detail=5D7Q89H36p77e5KAPs1l6v/Sb97LojnDtMgfETrECMLUO9erHzOJe+OynZRhvlGqvET/J 3dm2vHWnQHIuidpgLhS+P7NNYz+zyHLMY9yCwGoTDtboDaDPUTmYi5shhPJySBzZnboYr4mQK+ZF NwOSQ==V1; X-Resent-By: Forwarder X-Resent-For: rainer.schoepf@gmx.net X-Resent-To: rainer@rainer-schoepf.de X-Scanned-By: MIMEDefang 2.63 on 85.214.41.38 Status: R X-Status: X-Keywords: X-UID: 6247 Hi Philipp, Just a quick reply to one of your comments. On 11/02/2010, at 10:27 AM, Philipp Stephani wrote: > fgrep -n 'd:' *.dtx says that there is exp_not:d in l3expan.dtx:952. Thanks for pointing this out; not sure how we missed it really. > Perhaps "\exp_not" is sometimes a misnomer? \exp_not:o means "expand exactly once", and not "expand not". Using that convention, you could also define a macro \exp_not:x for exhaustive expansion. I think the meaning of the specifiers should not contradict the meaning of the macro name. The argument specifiers have nothing to do with the macro name and do not contradict it. \exp_not:n{...} means "do not expand the contents an expanding context". \exp_args:No \exp_not:n {...} , which is \exp_not:o, means "expand the argument once" then "do not expand the contents in an expanding context". So the "exp_not" refers only to the material passed to it as an argument, which has nothing to do with the fact that the argument happens to be expanded once beforehand. (And \exp_not:x, for which we would need an expandable \exp_arg:x, would be useless.) -- Will