concept-meta-objects.tex 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. % -*- Mode: TeX -*-
  2. % Meta-Objects
  3. The implementation of the \OS\ manipulates \term{classes}, \term{methods},
  4. and \term{generic functions}. The \OS\ contains a set of
  5. \term{generic functions} defined by \term{methods} on \term{classes};
  6. the behavior of those \term{generic functions} defines the behavior of
  7. the \OS. The \term{instances} of the \term{classes} on which those
  8. \term{methods} are defined are called meta-objects.
  9. %Programming
  10. %at the meta-object protocol level involves defining new classes of
  11. %meta-objects along with methods specialized on these classes.
  12. \beginsubsection{Standard Meta-objects}
  13. The \OS\ supplies a set of meta-objects, called standard meta-objects.
  14. These include \theclass{standard-object} and
  15. \term{instances} of the classes \typeref{standard-method},
  16. \typeref{standard-generic-function}, and \typeref{method-combination}.
  17. \beginlist
  18. \editornote{KMP: This is said redundantly in the definition of STANDARD-METHOD.}%!!!
  19. \itemitem{\bull}
  20. \Theclass{standard-method} is the default \term{class} of
  21. \term{methods} defined by the
  22. \macref{defmethod} and
  23. \macref{defgeneric} \term{forms}.
  24. \issue{GENERIC-FLET-POORLY-DESIGNED:DELETE}
  25. % \macref{generic-function},
  26. \endissue{GENERIC-FLET-POORLY-DESIGNED:DELETE}
  27. \issue{WITH-ADDED-METHODS:DELETE}
  28. %\specref{with-added-methods},
  29. \endissue{WITH-ADDED-METHODS:DELETE}%
  30. \issue{GENERIC-FLET-POORLY-DESIGNED:DELETE}
  31. % \specref{generic-flet},
  32. % and
  33. % \specref{generic-labels}.
  34. \endissue{GENERIC-FLET-POORLY-DESIGNED:DELETE}
  35. \itemitem{\bull}
  36. \Theclass{standard-generic-function} is the default \term{class} of
  37. \term{generic functions} defined by the forms
  38. \macref{defmethod},
  39. \macref{defgeneric},
  40. \issue{GENERIC-FLET-POORLY-DESIGNED:DELETE}
  41. % \macref{generic-function},
  42. % \specref{generic-flet},
  43. % \specref{generic-labels},
  44. \endissue{GENERIC-FLET-POORLY-DESIGNED:DELETE}
  45. \issue{WITH-ADDED-METHODS:DELETE}
  46. % \specref{with-added-methods},
  47. \endissue{WITH-ADDED-METHODS:DELETE}%
  48. and
  49. \macref{defclass}.
  50. \itemitem{\bull} The \term{class} named \typeref{standard-object}
  51. is an \term{instance} of \theclass{standard-class}
  52. and is a \term{superclass} of every \term{class} that is an
  53. \term{instance} of \typeref{standard-class} except itself and
  54. \typeref{structure-class}.
  55. \itemitem{\bull} Every \term{method} combination object is
  56. an \term{instance} of a \subclassof{method-combination}.
  57. \endlist
  58. \endsubsection%{Standard Meta-objects}