LATEX-L Archives

Mailing list for the LaTeX3 project


Options: Use Forum View

Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Lars Hellström <[log in to unmask]>
Reply To:
Mailing list for the LaTeX3 project <[log in to unmask]>
Mon, 19 Feb 2001 18:14:17 +0100
text/plain (41 lines)
At 17.04 +0100 2001-02-19, David Carlisle wrote:
>so where you have
> Current name: \describecsfamily{TP@<\meta{type}>}
>  New name: \describecsfamily{TP@T{\meta{type}}}
>ie a name of the form
>\csname TP@T{xxx}\endcsname
>you could have names
>\csname TP@T}xxx}\endcsname

I think it's best not to deliberately mismatch the braces as a user seeing
the above control sequence in an error message may easily mistake it for

  \TP@T }xxx}

(i.e., two end-of-groups) and thus get the wrong idea about where a group
he started actually ends. As for using names of the form TP@Iccc{ttt}iii
(four braces less than I suggested), it doesn't completely prevent
namespace overlap. The D instance in collection A{B} of type C is still
stored in the same place as the {C}D instance in collection A of type B
(although this overlap is much less likely). I think another advantage with
the names I suggested is that they are more easily interpreted by a user
who sees them in a TeX error message. The logical structure of


is easier to understand than that of


Compare with the case for the NFSS fontdef tokens. I understood the meaning
of e.g. \T1/pad/m/n/12 (when TeX was showling an hlist) the first time I
looked at it, but it took several months before I realised how tricky it
really was.

Lars Hellström