Contradiction between the MOP and the standard ?

Didier Verna didier at
Mon Jan 22 10:06:06 UTC 2018

Pascal Costanza wrote:

> Secondly, the general rule is: If there is a discrepancy between ANSI
> CL and AMOP, and ANSI CL has precedence, because that’s actually the
> binding standard.

  Yup, and thanks for your (chronological) explanations.

> I don’t remember the exact details anymore why I arrived to that
> conclusion, because it’s some time ago by now, but my conclusion and
> strong recommendation is to stay away from ensure-generic-function,
> ensure-generic-funciton-using-class, and also ensure-class and
> ensure-class-using-class. My interpretation of the various specs for
> these is that they were supposed to be convenience functions for “end
> users”, imitating the effects of the corresponding macro versions, but
> trying to deal with too many corner cases at the same time which
> require different solutions, which is why they have these
> contradictory requirements and effects.

  I got the same feeling. It seems to me that the functional (public)
  layer had better been defined as just the equivalent of the macro one,
  or rather the opposite, with macros letting one use designators
  instead of object arguments, and avoiding the need for too much
  quoting as well.

Resistance is futile. You will be jazzimilated.

Lisp, Jazz, Aïkido:

More information about the pro mailing list