Skip to content
Snippets Groups Projects
  1. May 09, 2003
  2. May 08, 2003
  3. May 07, 2003
  4. May 06, 2003
  5. May 05, 2003
  6. May 04, 2003
    • gerd's avatar
      * src/pcl/boot.lisp (bind-args): Fix last change. · 52639f10
      gerd authored
      52639f10
    • gerd's avatar
      Generate inline code for keyword argument processing in methods. · 4aa821e9
      gerd authored
      	Cleanup the code involved.
      
      	* src/pcl/boot.lisp (keyword-argument-processor): New function.
      	(bind-args): Rewritten.
      	(get-key-arg, get-key-arg1): Removed.
      4aa821e9
    • gerd's avatar
      *** empty log message *** · e7c67767
      gerd authored
      e7c67767
    • gerd's avatar
      &ENVIRONMENT variable is bound at the start, regardless of · a6878d10
      gerd authored
      	where it appears in the lambda list.  Found by Paul Dietz.
      
      	* src/code/defmacro.lisp (append-let-binding): New function.
      	(parse-defmacro-lambda-list): Use it for &environment.
      a6878d10
    • gerd's avatar
      Code cleanup. Use EXTENSIONS package to reduce clutter. · 4e0d7ca0
      gerd authored
      	* src/pcl/defsys.lisp ("PCL", "WALKER"): Use ext.
      	* src/pcl/pkg.lisp ("PCL", "WALKER"): Use ext.
      	* src/pcl/*.lisp: Remove ext: prefixes.
      
      	* src/pcl/low.lisp (symbolicate*): Renamed from symbolicate.
      	* src/pcl/std-class.lisp (shared-initialize):
      	* src/pcl/defs.lisp (get-built-in-class-symbol)
      	(get-built-in-wrapper-symbol):
      	* src/pcl/braid.lisp (initial-classes-and-wrappers)
      	(bootstrap-meta-braid): Use symbolicate*.
      
      	* src/pcl/macros.lisp (dolist-carefully): Removed.
      	(true, false, zero): Moved to defclass.lisp.
      	(printing-random-thing-internal): Removed.
      	(printing-random-thing): Removed.
      	(rassq): Removed.
      	(*keyword-package*): Removed.
      	(make-keyword): Removed; import from cl.
      	(memq, delq, assq): Macros removed, import from ext.
      	(get-declaration): Moved to boot.lisp, where it's used.
      
      	* src/pcl/boot.lisp (get-declaration): Moved here from
      	macros.lisp.
      
      	* src/pcl/methods.lisp (named-object-print-function, print-object):
      	* src/pcl/low.lisp (print-std-instance):
      	* src/pcl/dfun.lisp (print-dfun-info):
      	* src/pcl/cache.lisp (print-cache, print-wrapper):
      	* src/pcl/boot.lisp (make-early-gf):
      	Use print-unreadable-object instead of printing-random-thing.
      
      	* src/pcl/defclass.lisp (true, false, zero): Moved here from
      	macros.lisp.
      
      	* src/pcl/methods.lisp (legal-qualifiers-p)
      	(legal-specializers-p): Use dolist.
      4e0d7ca0
    • gerd's avatar
      *** empty log message *** · e0666d47
      gerd authored
      e0666d47
    • gerd's avatar
      Detect odd-length keyword argument lists, invalid keyword · 6d42033b
      gerd authored
      	arguments is methods.  Change lambda-lists of some gfs and methods
      	to include &key, or &key &allow-other-keys.  Bugs found by Paul
      	Dietz in his test suite.
      
      	* src/pcl/boot.lisp (bind-args): Handle the case that &key is
      	in the lambda-list, but no keyword args.
      	(get-key-arg1): Additional argument first-time; check for
      	invalid keyword arguments, and add number of args when true.
      	(get-key-arg): Call get-key-arg1.
      	(odd-number-of-keyword-arguments, invalid-keyword-argument):
      	New functions.
      
      	* src/pcl/init.lisp (make-instance) <symbol, class>: Add &key.
      	(initialize-instance) <slot-object>: Likewise.
      	(reinitialize-instance) <slot-object>: Likewise.
      	(update-instance-for-different-class): Likewise.
      	(update-instance-for-redefined-class): Likewise.
      	(shared-initialize) <slot-object>: Likewise.
      	* src/pcl/std-class.lisp (change-class): Likewise.
      	* src/pcl/slots.lisp (allocate-instance) <standard-class>:
      	(allocate-instance) <structure-class>: Likewise.
      	* src/pcl/methods.lisp (reinitialize-instance) <standard-method>:
      	Likewise.
      	* src/pcl/generic-functions.lisp (change-class)
      	(allocate-instance, update-instance-for-different-class)
      	(update-instance-for-redefined-class): Add &key &allow-other-keys.
      	* src/pcl/fsc.lisp (allocate-instance)
      	<funcallable-standard-class>: Add &key.
      
      	* src/pcl/std-class.lisp (make-defstruct-allocation-function): Fix
      	a paren bug.
      6d42033b
  7. May 03, 2003
  8. May 02, 2003
  9. May 01, 2003
  10. Apr 30, 2003
Loading