Return-Path: Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) by h2774747.stratoserver.net (8.15.2/8.15.2/Debian-3) with ESMTP id wBR9Ngx3017520 for ; Thu, 27 Dec 2018 10:23:43 +0100 Received: from relay2.uni-heidelberg.de ([129.206.119.212]) by mx-ha.gmx.net (mxgmx014 [212.227.15.9]) with ESMTPS (Nemesis) id 1Mryjf-1h6J8H2ZoT-00npdf for ; Thu, 27 Dec 2018 10:23:36 +0100 Received: from listserv.uni-heidelberg.de ([129.206.100.94]) by relay2.uni-heidelberg.de with ESMTP; 27 Dec 2018 10:23:37 +0100 Received: from listserv (localhost [127.0.0.1]) by listserv.uni-heidelberg.de (Postfix) with ESMTP id 1256D12767D; Thu, 27 Dec 2018 10:23:30 +0100 (CET) Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 16.0) with spool id 32162061 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Thu, 27 Dec 2018 10:23:29 +0100 Delivered-To: LATEX-L@listserv.uni-heidelberg.de Received: from relay2.uni-heidelberg.de (relay2.uni-heidelberg.de [129.206.119.212]) by listserv.uni-heidelberg.de (Postfix) with ESMTP id EC5BA12767D for ; Thu, 27 Dec 2018 10:23:29 +0100 (CET) X-IronPort-MID: 5535518 X-IronPort-RemoteIP: 176.28.54.184 X-IronPort-SenderGroup: UNKNOWNLIST X-IronPort-MailFlowPolicy: $ACCEPTED X-IronPort-Reputation: 5.2 IronPort-PHdr: =?us-ascii?q?9a23=3A36i6Wx+QjrAGt/9uRHGN80YQeigqvan1NQcJ65?= =?us-ascii?q?0hzohDabmn44+7bBCN//hphU6TG5jd6rdEhuvavqTqVHYPp5qM4zgZaJIZcR?= =?us-ascii?q?gDhI0NmhA4RtafABj1NvfsbGo/HdheWVtv9nq7GUxcBMvuIkXIpX+/5iJUHQ?= =?us-ascii?q?/wZkJuPuqgIofJlIys0vyqvZjaYgFGnj24NL1oJRO16wDQqtUbhYFrIaYZzh?= =?us-ascii?q?LVr2sNY/5Rx25jORSUhRmvrtyo8stF9CJd8+kk69YGUaj+ePEgSqdECT09L2?= =?us-ascii?q?0vzMbssBTPXE2D730AXyMan0MSUTLI5xz7QJr99xDCmLEhiHu8Osv7BfAuVD?= =?us-ascii?q?Cr/v0tVRnpzScKNjI09GvakMM2gK8J6BSm7wdyxYLZeuT3fLJ3Y7/dcNUGRG?= =?us-ascii?q?FAQtcZVipPBZm5ZpcOCOxJNPhRro30rV8D5RWkAgzkCOTqwz5Oznj4uM9ym+?= =?us-ascii?q?o7GAfFmgkhA84DtH7dp9XdMK4OXPDw1LPPzzjIc7VRwzi8oInEfxY9oO2dCK?= =?us-ascii?q?pqeJm0qwFnHAfEg1OM7I39amrKiKJX4y7Gs6w5Bb78w3QqoAxwvDW1k90hjo?= =?us-ascii?q?DY3MQIzFGB9Sh4zIsxL9CiRwh3bI3BctMYuieEOo9xWs5nTXtvvXNwxKcPv5?= =?us-ascii?q?39eSkW1JkjzRfUa9SDepSF8lf7TuGTLDxkwnV/d/js4nT6uVjl0eD6WsSuhR?= =?us-ascii?q?xEtCNDkZ/Jt2wR2hjZ48OHYv904kqxnC6V0ALe4f0CJlo73/m+SdZp0vs7kZ?= =?us-ascii?q?wdtl7GFyn9lRDtjaOYQU4j//Ch9+XtZri//M2mOoR5ix/zPuEVouLjWbtqCg?= =?us-ascii?q?EVRCDb4+m43ay5u1D/QfBKg/w6n63TvYrVY8gW9Oa1BApc04Br7BjabX/u3s?= =?us-ascii?q?4Rm3pBKVNZZB+DhYHiO3nKKez1HbKnmVOunTx3gffcMfXtD47MIX7KjLr6Ne?= =?us-ascii?q?8itQgGmExukZYGt84xaPlJKem7QkLrsd3EEhI1exe5xerqEpQ1148TX36OHr?= =?us-ascii?q?7MNarTtVGS4ed8RovELIQRuTv7N70k/6u30iF/ww9bIPXvhMtLOziiE/9rIl?= =?us-ascii?q?uUey/2j9MIAD1Moww/CezniVGPVTRefXn0U69vg1NzQI+gE4rHQZigxbKb2y?= =?us-ascii?q?LuVJNMb2ZFTFWNDWvlc4+NUPckbCuOL98kiiYDV7WqV8kmzx7k52qYg/J3a/?= =?us-ascii?q?HZ/CEVr8ep2sJ84e6VkBAu6TFwBc2W00mJRn15jiYQXTg00atj50tnxR3QtM?= =?us-ascii?q?owy+wdHttV6fRTVw48PpOJ1O12Bef5XQfZd8uIQlKrEZ22RCs8RdUrz5oScl?= =?us-ascii?q?5wTp+82wvb0XPgUNp33/SbQYY5+aXG0z3tKtZhnjzYgbI5gQBuR9sHcGSigu?= =?us-ascii?q?QmrVrpCoXEkluUm+ORTYpHh3Wf0mCFwCLOpkxcWR8qF7jDXDUfa0raoNDz61?= =?us-ascii?q?nNCbOjW/whNUNaxMiOJ7EvCJWhhEhaRPrlJNXVYn6g02a2CxGSw7qQbY3sM2?= =?us-ascii?q?wD1STZAUIAnkgd53GDfQQ5Ay6gpSrZAlkMXRr3ZFjw9OBltH6hZkQzygyGfg?= =?us-ascii?q?tt3ryp91gZiL3USv8e2K4FpDZ0qzhwGwXYvZqeAN6Bqgx9OaRENIpivhEdhS?= =?us-ascii?q?SE60okbsDzZ7pvjVMfbQlt6lnj0xxmUMNdl8lvrH4rwAd2I6+C3xVNemD9v9?= =?us-ascii?q?i4N7vJJ2315B3qZbTR3wSU3syf/KRJ7fUkt1jntgiiFmIm+mlqw5xNyXye65?= =?us-ascii?q?7WSg0IXtiiNyR/vwg/vLzcbiQnssnM0mZwNKCvrjLY89kuAeYp21CsdtFDPe?= =?us-ascii?q?WIGUWhdq9ST9jrI+sslV+zaxsCN+0H7684MfStcP6e0bKqNuJtxWP0vSF8+I?= =?us-ascii?q?l4l3m02W95Q+/M0YwCxqjJjA+OSzrsyU+7tcL6kpwCYisdTDPmlXrUQbVJb6?= =?us-ascii?q?g3Rr4lTH+0KpTmlNF3m5P9HmZC81yuDE9A39WmK0LLMg7NmDZI3EFSmkSJ3C?= =?us-ascii?q?u1yzstzGMiqa+S0D2Iz+3kaBdBNmMZHGQ=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0C3EgCrmSRcmLg2HLBjHgEfBgcGgT0?= =?us-ascii?q?IAwGBLlCBXAQLJ4N+lAuBYAglD5dUgXoLAQErAYRAAoJAGgcBBDYEDAEDAQE?= =?us-ascii?q?CAQEBARQBAQEBAQgLCwYpIwyFSwIEAQEhFQgBATgPCxoCJgICVwUBDQgBAYM?= =?us-ascii?q?eggMDAaYQcIEvgnYBAQWCQ4RbCIELizSBVz+BOAyCX4gJgleJT4ZfkR8HAoI?= =?us-ascii?q?lBI86HooHh1+TKoZYAhETAYFgCIFsfYMvgjWIZ4VAPjOBBQEBIYwqAQE?= X-IronPort-AV: E=Sophos;i="5.56,404,1539640800"; d="scan'208";a="5535518" X-MGA-submission: =?us-ascii?q?MDEpK+AHn5gwp2/oQtNUw14gT0m/4ppDz4AOsi?= =?us-ascii?q?Ni9wtDuYEULettQT7jqz2exvEkibK5D/zwaUO1t7v/hyVtmxob7id3NK?= =?us-ascii?q?bjhvG/+kzcMehxUYQFAp6xQajp6R7zAys8FQejp2XlpLSRj6RNzbFR8V?= =?us-ascii?q?oIOhDNQkNIdhLhXtfoM155HQ=3D=3D?= Received: from comedy.dante.de ([176.28.54.184]) by relay2.uni-heidelberg.de with ESMTP/TLS/DHE-RSA-AES128-GCM-SHA256; 27 Dec 2018 10:23:30 +0100 Received: from [IPv6:2003:cb:af22:2e00:19bb:2c9b:4947:ae69] (p200300CBAF222E0019BB2C9B4947AE69.dip0.t-ipconnect.de [IPv6:2003:cb:af22:2e00:19bb:2c9b:4947:ae69]) (authenticated bits=0) by comedy.dante.de (8.14.4/8.14.4/Debian-4+deb7u1) with ESMTP id wBR9NRBd030738 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NOT) for ; Thu, 27 Dec 2018 10:23:28 +0100 References: <9f825eb2-4d43-464c-c4e9-d29478b5da84@gmail.com> <983de21c-d7a3-fb43-499b-28882cff33c7@gmail.com> User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.3.3 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-DANTE-Spam-Score: -1.65 () BAYES_00,HELO_MISC_IP,SPF_FAIL X-Scanned-By: MIMEDefang 2.78 on 81.169.212.23 X-Scanned-By: MIMEDefang 2.71 on IPv6:2a01:488:67:1000:b01c:36b8:0:1 Message-ID: Date: Thu, 27 Dec 2018 10:23:26 +0100 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Frank Mittelbach Subject: Re: Problem with choosing argument specification To: LATEX-L@LISTSERV.UNI-HEIDELBERG.DE In-Reply-To: <983de21c-d7a3-fb43-499b-28882cff33c7@gmail.com> Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: Envelope-To: X-GMX-Antispam: 0 (Mail was not recognized as spam); Detail=V3; X-Spam-Flag: NO X-UI-Filterresults: notjunk:1;V03:K0:btund7fVLtY=:3hSjhSgNo8LBaLdBHglncfeK+o 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 == X-UI-Loop:V01:QsC5JcHAJPE=:CfgmScYhxyY3gQJFd4Dza1N9sOw5HGIbZ0WaaoU5TG4= X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:6V7zlXA9MTE=:ghDaNUkMCXpVX/bJla9b5P RDE8wir1X2Xu376CLaKIiUcRD/Nrm5mXOlziz9ygiXoiFxUldMKv596I2eUe3n6q0Z7Mc7SXQ /uS5iqumKyUJ8arzhdI4J7A9DE584PkuZuLFdI489NtdOgkTzO5tBgUNbpSH7s6Uh+DNTzCby 0meKhj7Tcqqf+cqwg9jsHTHeNVGjDCf6GVzed6PKr1+0bV8nlpE7u9ab3M6ZeFZKdHxaYAHnY oxUCnVzPh5UJXC74T16Kdje5VczcclpjkLM71LF8W4tF5f0PKxqd31mqcy55loCzQTY0mVZi5 3pE66AQUEFYc3PvLwuEY841kuClD61X63LkYA1Mj/SBm85PXCQlEG5WhzSH8Lz085173AD2DZ AwTISrzJVGWAIF6OdKaBsoz6JeCsjqU3HKtdYQ5DIMgJiSoa0u1H094uq9N99 Status: R X-Status: X-Keywords: X-UID: 8140 Am 27.12.2018 um 09:49 schrieb Bruno Le Floch: >> Is it correct to use 'Ncnx' instead of 'Ncnn'? What is the best >> argument specification to use instead of 'Ncnx' here? >> >> Thanks, >> Tisha > \exp_args:Nc To elaborate briefly on Bruno's answer: - \exp_args:N... is manipulating the arguments of a function before they are passed to the function. "n" in its signature means to keep the corresponding argument unchanged. It is therefore only needed if a later argument needs manipulation, e.g., \exp_args:Ncnn would do the same as \exp_args:Nc (only less efficient). We have therefore not defined all the possible additional \exp_args:N... functions ending in a multiple number of "n"'s - For the same reason you give only "Nc" in a \cs_generate_variant:Nn specification even if the base function for which you want make the variant has more than 2 arguments. Using Ncnx instead would be conceptually wrong as that changes the argument as well. ----------------------------- A different topic is is the use of "c" which is not what you want. "c" makes a csname from string input (at least that is the idea) while "v" would make it from the content of a variable frank