![](https://secure.gravatar.com/avatar/c1389d0584ea3ced1cff3450a93f7372.jpg?s=120&d=mm&r=g)
"Martin" == Martin Schröder
writes:
[...] Our "problem" is that TeX, the LaTeX kernel and plain.tex are very stable, so nobody expects new primitives from the engine. And we don't want to break backwards compatibility with old documents.
The only way for this is a reserved namespace like \ptex (it seems only texinfo uses it, and it's use won't break with a new pdftex).
You never can be sure that a new primitive leads to a name clash. The only thing you can do is to invent names for new primitives which are quite unlikely to be used by macro writers. So Martin's idea is not bad...
I suggest introducing non-pdf-extensions with \ptex$foo.
... though I prefer, instead of using `$', to make use of the fact that TeX is case sensitive. (\PTEXfoo instead of \ptex$foo). I think that it is quite unlikely that someone wrote a macro yet which name begins with `PTEX'. Though \catcode changes might provide a higher level of security, I think that changing \catcodes makes the primitives too inconvenient to use. Regards, Reinhard -- ---------------------------------------------------------------------------- Reinhard Kotucha Phone: +49-511-4592165 Marschnerstr. 25 D-30167 Hannover mailto:reinhard.kotucha@web.de ---------------------------------------------------------------------------- Microsoft isn't the answer. Microsoft is the question, and the answer is NO. ----------------------------------------------------------------------------