chiark / gitweb /
src/class-make-impl.lisp: Abstract out the guts of `guess-metaclass'.
It's mostly trying to pick out a maximum value from a partially ordered
set. This is a useful primitive, so factor it out.
This also exposes a hack in the previous `guess-metaclass'
implementation. It would, somewhat sneakily, manage to return nil if
given an empty superclass list, which is ideal for the builtin module,
which hasn't built the metaclass yet and must fill it in later. Leave
this hack in, but make it more explicit.