## LATEX-L@LISTSERV.UNI-HEIDELBERG.DE

 Options: Use Forum View Use Monospaced Font Show Text Part by Default Condense Mail Headers Message: [<< First] [< Prev] [Next >] [Last >>] Topic: [<< First] [< Prev] [Next >] [Last >>] Author: [<< First] [< Prev] [Next >] [Last >>]

At 12:31 +0100 98/06/30, David Carlisle wrote:
>> So instead of e.g. \chk_var_or_const:N we have \chk/var_or_const:N.
>> Again: / _ : all have catcode 11.
>
>Perhaps allowing _ as the separator and for use within the final names
>is not ideal, although looking at your example above / looks too hard'
>a break to me, I can read \chk_var_or_const:N as one token but \chk/
>looks too split off. Perhaps another idea would be to use _ as now, but
>not use it within the final name, as in \chk_VarOrConst:N.

The main thing is of course keeping the module and word separator signs
different. But otherwise, I think it is mainly a question of getting used
to:

The variation \chk/var_or_const:N probably looks difficult to people
spending nearly all their time programming in TeX and not other languages,
but I think that this use of "_" is difficult to accept for say a
mathematician also only using TeX but which never programs in computer
languages where underscore is often used as a word separator within a name.

There is a programming subtlety though, which is quite convenient, namely
the difference between
\@nameuse{\foo/bar}  % Call the expansion of the name "foo/bar"
\@nameuse{\foo /bar} % Call the expansion of the name "foo" appended with
"/bar"
where
\def\@nameuse#1{\csname #1\endcsname}
as in LaTeX.

So one can make use of this subtlety when programming, and the fact that
"/" breaks off then after a while becomes appreciative.

But another common module separator would be :, but that is already
occupied. One could change the argument spec separator to ., so that names
soul look like \foo:bar.n or something.

Hans Aberg
`