(defun clos-tiebreaker (candidates so-far)
"The CLOS linearization tiebreaker function.
- Intended for use with MERGE-LISTS. Returns the member of CANDIDATES which
- has a direct subclass furthest to the right in the list SO-FAR.
+ Intended for use with `merge-lists'. Returns the member of CANDIDATES
+ which has a direct subclass furthest to the right in the list SO-FAR.
This must disambiguate. The SO-FAR list cannot be empty, since the class
under construction precedes all of the others. If two classes share a
(defun c3-tiebreaker (candidates cpls)
"The C3 linearization tiebreaker function.
- Intended for use with MERGE-LISTS. Returns the member of CANDIDATES which
- appears in the earliest element of CPLS, which should be the list of the
- class precedence lists of the direct superclasses of the class in
+ Intended for use with `merge-lists'. Returns the member of CANDIDATES
+ which appears in the earliest element of CPLS, which should be the list of
+ the class precedence lists of the direct superclasses of the class in
question, in the order specified in the class declaration.
The only class in the class precedence list which does not appear in one
"Compute the class precedence list of CLASS using CLOS linearization rules.
We merge the direct-superclass lists of all of CLASS's superclasses,
- disambiguating using CLOS-TIEBREAKER.
+ disambiguating using `clos-tiebreaker'.
The CLOS linearization preserves local class ordering, but is not
monotonic, and does not respect the extended precedence graph. CLOS
We merge the direct-superclass list of CLASS with the full class
precedence lists of its direct superclasses, disambiguating using
- CLOS-TIEBREAKER. (Inductively, these lists will be consistent with the
+ `clos-tiebreaker'. (Inductively, these lists will be consistent with the
CPLs of indirect superclasses, since those CPLs' orderings are reflected
in the CPLs of the direct superclasses.)
We merge the direct-superclass list of CLASS with the full class
precedence lists of its direct superclasses, disambiguating using
- C3-TIEBREAKER.
+ `c3-tiebreaker'.
The C3 linearization preserves local class ordering, is monotonic, and
respects the extended precedence graph. It is the linearization used in
(defmethod finalize-sod-class ((class sod-class))
- ;; CLONE-AND-HACK WARNING: Note that BOOTSTRAP-CLASSES has a (very brief)
+ ;; CLONE-AND-HACK WARNING: Note that `bootstrap-classes' has a (very brief)
;; clone of the CPL and chain establishment code. If the interface changes
- ;; then BOOTSTRAP-CLASSES will need to be changed too.
+ ;; then `bootstrap-classes' will need to be changed too.
(with-default-error-location (class)
(ecase (sod-class-state class)