Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) by h1439878.stratoserver.net (8.14.2/8.14.2/Debian-2build1) with ESMTP id r6MH8CBh028095 for ; Mon, 22 Jul 2013 19:08:13 +0200 Received: from relay.uni-heidelberg.de ([129.206.100.212]) by mx-ha.gmx.net (mxgmx107) with ESMTP (Nemesis) id 0MFiQ5-1UvWHk174f-00Eb0M for ; Mon, 22 Jul 2013 19:08:02 +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 r6MH5B4a025705 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 22 Jul 2013 19:05:11 +0200 Received: from listserv.uni-heidelberg.de (listserv.uni-heidelberg.de [127.0.0.1]) by listserv.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id r6MFG57F028572; Mon, 22 Jul 2013 19:05:10 +0200 Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 16.0) with spool id 10304097 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Mon, 22 Jul 2013 19:05:09 +0200 Received: from relay2.uni-heidelberg.de (relay2.uni-heidelberg.de [129.206.210.211]) by listserv.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id r6MH59kC001566 for ; Mon, 22 Jul 2013 19:05:09 +0200 Received: from mail-oa0-f46.google.com (mail-oa0-f46.google.com [209.85.219.46]) by relay2.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id r6MH50DB029065 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=FAIL) for ; Mon, 22 Jul 2013 19:05:03 +0200 Received: by mail-oa0-f46.google.com with SMTP id h1so9309526oag.19 for ; Mon, 22 Jul 2013 10:04:59 -0700 (PDT) X-Received: by 10.60.98.73 with SMTP id eg9mr26889962oeb.70.1374512699268; Mon, 22 Jul 2013 10:04:59 -0700 (PDT) MIME-Version: 1.0 Received: by 10.76.68.99 with HTTP; Mon, 22 Jul 2013 10:04:38 -0700 (PDT) References: <51ECE2AC.7020806@morningstar2.co.uk> <51ED4B60.8040900@morningstar2.co.uk> Content-Type: text/plain; charset=ISO-8859-1 Message-ID: Date: Mon, 22 Jul 2013 19:04:38 +0200 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Michiel Helvensteijn Subject: Re: Propagation of 'global'ness To: LATEX-L@LISTSERV.UNI-HEIDELBERG.DE In-Reply-To: <51ED4B60.8040900@morningstar2.co.uk> 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-GMX-Antivirus: 0 (no virus found) X-UI-Filterresults: notjunk:1;V01:K0:09EbUTjdR7w=:2Ow9fQ7kMY32MwdALzoNzDOP5T LdU+MvhvgEYEb7BEibTj+mFcSc0+wf86MxfszrLxhjC8oQ3eZwo6xf8UujQKE3rI5gCaLqbSf 1phByIgnmh5xqFLnB0kkcTgJvbM0NxSvfl2izOaNBmt7fJ6iI2WH5aly7jYNv3X89o8DUE9aR uMd53cXlaVUpa4whK/Gnwash9uAGHBVLYoI5mW46alSmbg+tCfT3RfjEnsqSF2/cfHYT8IAfE h/iYosS7rUyBxwpioJTTyIeMy8K/ikGAXag6gQFzV4hJXARpoa6qw7SyrqDGU6TQutloF7pxi 6H0IlWT0c/TG4Gt142Zu0xItsPkftQ/Wbh0TkNN9avBcxtxBCTKY61G9WXe+15xUWo7l4E/6/ Hwg9XAl8xEj0V0An7m4PXtQVzUqHJ42lHYwfhkHZAI0s0G1Wu4eAImqupgOaoLt+ZC5TF++WQ CQtKUha7oXtr1Zafh6Tgdp1wht8N97WQDe6s9b3uTZdvYUDi/Jn3PLYC1IWYh8j5cvdU5jMOb eH6uyPnIcZC51c8oL1qRf3I+QF0htqTp0cy0vsgi1b/SbSS+UOm/7JsVBdLXLoB+0y88s53mB kUgFiWX4y20kLQWSieK8d8knke4OWkkYkE8T7Wq5/y0EaJwrwbx09XZ4SgjgWBXxiEFDII2dc Zzz6/ggSUlS8QvNh+bKReT+vOhhCH2+BoKti+hMJBzvuskz9+l9V2ImWJoasGA8x434H9AauM AMRkTYBAS9SFNUv8Lqv7696qARgv+fcfSVocg9wqO8rpmzIFJ6nYrPXTBa/cnjZH0xDvZkxAi XeHPsZ/GEtO9Jm8t519vXy8kg3tEcSfVrbQWfCV9Nqi0I5yi3SkdqZj1iQ81C5tAB89JiuJc6 RM6mv2GG83/yugTvM7E6vmEnm1yOpOo2qma1dYbYsrreN8F2Iq2PjRwVkC9+mJ7wr5EDBOERh 22NmVLWatTTfqnd4C83QpuAwlt3CS17i1GTZNBMRcrzbJ4pwjX3jdcmFnyLzHE4o39hFA/n7R b4NIB6sk1F0Uln4wp/vW5Dv0/GIvpA5prHsOu1R8R7kgkRwrPxfUsDxYxRvjI+vPfFkHw8NwB ElCFpWV/h/8+OLYRpQ0DwxQq1m8KEfu8UWGPk7cFf59vCW8t4K8lz/PqGRvsLno6I8FlHSIGg LcMDX+PE5BOEdpbtWwIfJcatmlj+abd0YoizMslVnftYoPHOJVz9tafKpFT61/6A6eFGqyC3j 79JbJLga0xhtkFOlDQrWEgcac4FOhjSd5UZrbc+3o4HgBmsQWpKUd8QcjAFWOKzxfwhu8xlMY VBSjtFK3wGfybVdx4PgxIZdok1RFp1xnOnoX7tSFc35LnJJ3BublxmUja2Eqh7P7ZWbYXTPfc NyH3U1iN7caDczAcliuBzJujtdI8eJ6YbW+VrhdGgt68UwaALZcddU7SmmHcw+bHby/Pdr+sH m9iXsJCWvCh2hVzF3sx2gNkjN+MU8gOhMA0aEMqopNwLXMZ4jn0mDYu1I9mSRKYv9RMnOKEG4 w+4GK9LFL3biM/2iTFnJEmOQuYpxU3o1Mkz18vnuth67DKtCSLMMMfsFDGMT7o38/UiMNpjzt wuUb8Oj3/ZM= X-UI-Loop:V01:+hsp8GeZIpw=:Fn3oHp1QFVNH46RWYnTEF0rp+2tc5ElycYvu4XmElFI= Status: R X-Status: X-Keywords: X-UID: 7275 On Mon, Jul 22, 2013 at 5:10 PM, Joseph Wright wrote: > I was thinking more that if we look at other languages there are a > limited number of data types, and for specialist applications you still > have to use whatever 'base' types are available. Now, we of course > really only have macros and TeX's build-in registers Well... TeX is kind of unique in that it pretty much allows you to completely redefine the language from the inside. Any datastructure you don't have, you can add. And it will look as if it is native. > I've no real experience of other languages, though, so perhaps I miss > something. What does one do in say C if the data structures available > are not suitable? (I didn't think you could even add keywords in most > languages, so adding data types seems tricky.) C is quite old, but even C allows the creation of new datastructures and control-flow constructs. New keywords can be added with preprocessor directives (which are very close to TeX command sequences, actually; both are often referred to as macros). What C lacks is encapsulation. Like LaTeX, it has to rely on goodwill and convention to prevent conflicts. C++ fixed this (somewhat). > [BTW, I'd hope expl3 is used for 'typesetting', broadly :-) Bruno may > want to pilot the Mars rover in TeX, but ...] TeX is Turing Complete. If you won't exploit it, someone else will. Enhanced programming tools help us to build packages that ultimately make life easier for authors. Below that level, treating TeX like a general purpose language makes a lot of sense. Isn't that why you guys are creating expl3 in the first place, and why dialects like LuaTeX exist? -- www.mhelvens.net