At 21:45 +0100 97/10/13, Frank Mittelbach wrote: > > > by the way, i think that using multiple parameters in this, and other, > > > macros is not very friendly. why not adopt the keyval syntax, ie > > > > > > \date{communicated=xxxx,revised=xxxx} ... >If such a spec includes a number of mandatory keywords, a number of >optional ones but allows classes to add additional keywords that are >supposed to be ignored by classes not implementing them then this can >be a big improved. Of course it might also produce chaos if class A >defines foo to mean X and class B defines foo to mean Y then we are >back at incompatible classes. This can be sorted out by ideas of object orientation: Class A uses local names A/foo, and class B uses local names B/foo; thus they do not clash. So perhaps class or object "article" would define \article/communicated % Date when article is communicated. \article/revised % Date when article is revised. giving room for class journal to define \journal/revised % Date when journal issue is revised. putting in the revision dates of the articles in its own \journal/article structure, taking say a number as an argument, so that \journal/article5{revised} might expand to the date article #5 was revised (or something). It is then possible to hide away the internal "/" structures by environment style commands. I have done programming in this style. -- But I am not sure if TeX getting slow by long names. Hans Aberg * Email: Hans Aberg <mailto:[log in to unmask]> * AMS member listing: <http://www.ams.org/cml/>