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 * Email: Hans Aberg <mailto:[log in to unmask]> * Home Page: <http://www.matematik.su.se/~haberg/> * AMS member listing: <http://www.ams.org/cml/>