```At 12:56 -0400 97/10/20, Matthew Swift wrote:
>I don't have an opinion on cleaning up the internals of \@ifdefinable;
>I have been able to write a large number of defining commands without
>running into any problems in this regard (the moredefs package).

I just want to clean up the logic, so it is cleaner when starting doing
more complicated things (such as implementing "object"): When defining a
new command one wants to ensure first that it does not conflict with the
LaTeX internals, which seems to be what the \@ifdefinable should be, and
then you may have additional wishes, such as \@ifundefined.

>        4) advanced syntax that lets you compute the macro name and/or write a
>           complex parameter specification.

Isn't this just the usual (in-reality-not-so-advanced) TeX parameter
definitions you are thinking of here?

I think the LaTeX parameter style \newcommand[6]... is pointless. Should
it not be scrapped in LaTeX3, only be allowed in compatibility mode?

Hans Aberg