-
- Downloads
Rework the PCL class hierarchy to better match the disjoint instance
and funcallable-instance types within CMUCL. Add the new class funcallable-standard-object, and the new class std-object as a superclass of both standard-object and funcallable-standard-object. Generic-functions are now funcallable-standard-objects implemented as FINs and disjoint from standard-objects which are implemented as instances in CMUCL, fixing some problems in the type system. This change moves the PCL implementation away from the MOP specification which requires that generic-functions be standard-objects. However ANSI CL does not require generic functions to be standard-objects and the MOP author Gregor Kiczales suggests it is appropriate for generic functions to be disjoint from standard-objects.
Showing
- code/describe.lisp 2 additions, 2 deletionscode/describe.lisp
- pcl/braid.lisp 7 additions, 3 deletionspcl/braid.lisp
- pcl/cache.lisp 2 additions, 0 deletionspcl/cache.lisp
- pcl/construct.lisp 1 addition, 2 deletionspcl/construct.lisp
- pcl/defs.lisp 30 additions, 54 deletionspcl/defs.lisp
- pcl/dfun.lisp 3 additions, 3 deletionspcl/dfun.lisp
- pcl/generic-functions.lisp 7 additions, 7 deletionspcl/generic-functions.lisp
- pcl/init.lisp 3 additions, 3 deletionspcl/init.lisp
- pcl/methods.lisp 8 additions, 10 deletionspcl/methods.lisp
- pcl/pkg.lisp 2 additions, 1 deletionpcl/pkg.lisp
- pcl/slots-boot.lisp 6 additions, 0 deletionspcl/slots-boot.lisp
- pcl/slots.lisp 4 additions, 4 deletionspcl/slots.lisp
- pcl/std-class.lisp 3 additions, 3 deletionspcl/std-class.lisp
Loading
Please register or sign in to comment