Parent Directory | Revision Log
|Links to HEAD:||(view) (annotate)|
|Links to PRE_LINKAGE_TABLE:||(view) (annotate)|
Patch by Gerd Moellmann to turn old-style into new-style eval-when's in the PCL code base.
Huge patch by Gerd Moellmann that removes PCL::ITERATE and PCL::GATHER* in favor of normal CL constructs. In a similar vein to SBCL, this patch also replaces all uses of #'(lambda ...) by just (lambda ...), and removes now-dated looking quotes in front of self-evaluating objects, like keywords and t/nil. The patch has been slightly frobbed by me, to correct a couple of slight oversights, and make more effective use of the loop facility in a number of places.
This revision turns on INFORM-TYPE-SYSTEM-ABOUT-STD-CLASS which represses compiler warnings about undefined class when compiling defmethods in the same file as the defclass forms. It does this by calling (lisp:make-class :name class-name) which creates a minimal entry such that lisp:find-class will return non-nil. The class entry is filled out at load time. A consequence of this is that until load time, any attempt to treat that minimal class as valid will fail, probably because lisp:class-layout => NIL. This doesn't seem a problem in current practice.
Change toplevel PROCLAIMs to DECLAIMs.
Disable new code in inform-type-system-about-std-class which seems to trigger trouble when native compiling defcombin.lisp
The stream class should have kernel:instance as its superclass.
These changes remove some obsolete and unused type system interface codes, and introduces code to "inform-type-system-about-std-class". The effect of this new code is to put minimal class definitions into the compile-time environment to prevent undefined-type warnings. These definitions are replaced with the correct class defs at load-time.
Remove all #+ and #- conditionals from the source code. What is left is essentially Common Lisp except for explicit references to things in CMUCL specific packages.
Further cleanup of the code now that the :SETF feature is assumed standard.
Cleanup of the PCL directory. Removed files and conditional code for long dead lisp implementations. Some parts of the code is now a bit easier to read and (hopefully) understand.
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.
Port the defconstructor code to CMUCL.
Gray streams support: * Rename the 'stream structure class to sys:lisp-stream. * Add a new none hierarchical 'stream built-in class which inherits from: instance, t. * Hack in the new stream class as a mixin for the structure base lisp-stream class which now inherits from: stream, structure-object, instance, t. * Add a new 'fundamental-stream standard-class which includes 'stream as a mixin, and add PCL hacks to allow this to be redefined after PCL is loaded to be (defclass fundamental-stream (standard-object stream) ...). * Add appropriate support to the base stream functions to dispatch to the Gray stream functions for the handling of fundamental-streams. Some of the lisp-streams encapsulating CLOS streams still need a little work.
This commit brings the PCL repository up to release 17f and also includes the changes in the X86 1.03.7 kit. Although the 1.03.7 changes were already in the repository, the other files appear to be of early vintage and do not work with a 17f system. Hopefully all is correctly synched now.
Changed definition of *subtypep to speed up method definition using code provided by Richard Harris.
September-16-92-PCL-e has been incorporated into the CMUCL sources thanks to Rick Harris.
This is September 92 PCL.
This is July 92 PCL
This is March-92-PCL-2a.
Un-commented-out an unused function, to be like the distribution.
Merged with latest PCL version.
Changed stuff to know that we have setf functions.
Workaround bug in our compiler.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.
|Powered by ViewVC 1.1.5|