[tug-summer-of-code] Project idea: LaTeX3 "microkernel"

Will Robertson wspr81 at gmail.com
Sun Mar 8 14:58:49 CET 2009


On 08/03/2009, at 11:57 PM, Jonathan Fine wrote:

> Will Robertson wrote:
>
>>> It would help if the LaTeX3 project adopted a programming  
>>> environment that could produce macros for both the secure and  
>>> traditional environments.
>> The current expl3 is set up to provide this already. There is an  
>> option when l3names is processed to remove all of the old TeX  
>> primitives from the user namespace; this automatically makes any  
>> documents processed "secure", since users can't change catcodes and  
>> the only commands provided to them are "document-level" macros.
>
> Yes, I already knew about this option.  But neither the traditional  
> nor the secure environments use \cs_set_eq:NN as the name for \let,  
> which is what follows from your suggestion.

Huh? I might have completely misunderstood you.  Isn't the "secure"  
variant of Plain a specially written variant of Plain that prevents  
users from using \def, \let, \catcode, and so on?  What's that got to  
do with the name of \cs_set_eq:NN besides the fact that it's no longer  
in the user namespace? The kernel early on uses \cs_set_eq:NwN as the  
literal primitive \let, but later defines a wrapper around it called  
\cs_set_eq:NN which is used in most of the other expl3 modules.

> I am reluctant to 'fork' LaTeX.  I'd much rather work with the  
> LaTeX3 project to produce a secure variant of the relevant style and  
> core files.  Are you up for that?

In the long run, yes, I think we're talking on the same wavelength.  
But if you want to support LaTeX in MathTran in the near future then  
LaTeX3 isn't the place to look (since backwards compatibility is only  
a long term goal). However, I do hope that the eventual design of  
(some of) the LaTeX document classes or document types allow a secure  
mode that would facilitate the type of processing the MathTran does.

Regarding forking LaTeX: I would encourage you to do so if the  
manpower is available for MathTran; the core and packages you would  
support are obviously very stable, and if you rename the resulting  
format then there's no licensing problem at all.

Will

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2415 bytes
Desc: not available
Url : http://tug.org/pipermail/summer-of-code/attachments/20090309/f4f2eef2/attachment.bin 


More information about the summer-of-code mailing list