<div dir="ltr">As an example amsmath.sty redefines \eqno and \leqno. Would not it be better to define new macros rather than redefining existing primitives? and how one can (if a package already redefines some primitives), restore the original definition of the primitive? so that a primitive is really a primitive? as in ams math package, \eqno and \lqno become primitives not macros?</div>