/[cmucl]/src/pcl/macros.lisp
ViewVC logotype

Log of /src/pcl/macros.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (annotate)
Links to unicode-utf16-extfmt-branch: (view) (annotate)
Sticky Tag:

Revision 1.29 - (view) (annotate) - [select for diffs]
Wed Jun 18 09:23:09 2003 UTC (10 years, 10 months ago) by gerd
Branch: MAIN
CVS Tags: RELEASE_19f, RELEASE_20a, amd64-dd-start, amd64-merge-start, double-double-array-base, double-double-array-checkpoint, double-double-base, double-double-init-%make-sparc, double-double-init-checkpoint-1, double-double-init-ppc, double-double-init-sparc, double-double-init-sparc-2, double-double-init-x86, double-double-irrat-end, double-double-irrat-start, double-double-reader-base, double-double-reader-checkpoint-1, double-double-sparc-checkpoint-1, dynamic-extent-base, intl-2-branch-base, intl-branch-base, label-2009-03-16, label-2009-03-25, lisp-executable-base, merge-sse2-packed, merge-with-19f, merged-unicode-utf16-extfmt-2009-06-11, mod-arith-base, portable-clx-base, portable-clx-import-2009-06-16, ppc_gencgc_snap_2005-05-14, ppc_gencgc_snap_2005-12-17, ppc_gencgc_snap_2006-01-06, pre-merge-intl-branch, pre-telent-clx, prm-before-macosx-merge-tag, release-19a, release-19a-base, release-19a-pre1, release-19a-pre2, release-19a-pre3, release-19b-base, release-19b-pre1, release-19b-pre2, release-19c, release-19c-base, release-19c-pre1, release-19d, release-19d-base, release-19d-pre1, release-19d-pre2, release-19e, release-19e-base, release-19e-pre1, release-19e-pre2, release-19f-base, release-19f-pre1, release-20a-base, release-20a-pre1, snapshot-2003-10, snapshot-2003-11, snapshot-2003-12, snapshot-2004-04, snapshot-2004-05, snapshot-2004-06, snapshot-2004-07, snapshot-2004-08, snapshot-2004-09, snapshot-2004-10, snapshot-2004-11, snapshot-2004-12, snapshot-2005-01, snapshot-2005-02, snapshot-2005-03, snapshot-2005-04, snapshot-2005-05, snapshot-2005-06, snapshot-2005-07, snapshot-2005-08, snapshot-2005-09, snapshot-2005-10, snapshot-2005-11, snapshot-2005-12, snapshot-2006-01, snapshot-2006-02, snapshot-2006-03, snapshot-2006-04, snapshot-2006-05, snapshot-2006-06, snapshot-2006-07, snapshot-2006-08, snapshot-2006-09, snapshot-2006-10, snapshot-2006-11, snapshot-2006-12, snapshot-2007-01, snapshot-2007-02, snapshot-2007-03, snapshot-2007-04, snapshot-2007-05, snapshot-2007-06, snapshot-2007-07, snapshot-2007-08, snapshot-2007-09, snapshot-2007-10, snapshot-2007-11, snapshot-2007-12, snapshot-2008-01, snapshot-2008-02, snapshot-2008-03, snapshot-2008-04, snapshot-2008-05, snapshot-2008-06, snapshot-2008-07, snapshot-2008-08, snapshot-2008-09, snapshot-2008-10, snapshot-2008-11, snapshot-2008-12, snapshot-2009-01, snapshot-2009-02, snapshot-2009-04, snapshot-2009-05, snapshot-2009-07, snapshot-2009-08, snapshot-2009-11, snapshot-2009-12, snapshot-2010-01, snapshot-2010-02, snapshot-2010-03, sparc_gencgc, sparc_gencgc_merge, sse2-base, sse2-checkpoint-2008-10-01, sse2-merge-with-2008-10, sse2-merge-with-2008-11, sse2-packed-2008-11-12, sse2-packed-base, unicode-snapshot-2009-05, unicode-snapshot-2009-06, unicode-string-buffer-base, unicode-string-buffer-impl-base, unicode-utf16-base, unicode-utf16-char-support-2009-03-25, unicode-utf16-char-support-2009-03-26, unicode-utf16-extfmt-2009-03-27, unicode-utf16-extfmt-2009-06-11, unicode-utf16-extfmts-pre-sync-2008-11, unicode-utf16-extfmts-sync-2008-12, unicode-utf16-string-support, unicode-utf16-sync-2008-07, unicode-utf16-sync-2008-09, unicode-utf16-sync-2008-11, unicode-utf16-sync-2008-12, unicode-utf16-sync-label-2009-03-16
Branch point for: RELEASE-19F-BRANCH, RELEASE-20A-BRANCH, amd64-dd-branch, double-double-array-branch, double-double-branch, double-double-reader-branch, dynamic-extent, intl-2-branch, intl-branch, lisp-executable, mod-arith-branch, portable-clx-branch, ppc_gencgc_branch, release-19a-branch, release-19b-branch, release-19c-branch, release-19d-branch, release-19e-branch, sparc_gencgc_branch, sse2-branch, sse2-packed-branch, unicode-string-buffer-branch, unicode-string-buffer-impl-branch, unicode-utf16-branch, unicode-utf16-extfmt-branch
Changes since 1.28: +2 -2 lines
Diff to previous 1.28
	Remove package nicknames USER from COMMON-LISP-USER.  Add a new
	package COMMON-LISP which LISP uses, so that COMMON-LISP no longer
	has the non-ANSI nickname LISP.

	To bootstrap, use boot13.lisp as target:bootstrap.lisp with pmai's
	build scripts, and do a full compile.

	* src/bootfiles/18e/boot13.lisp: Change for all the package
	changes.

	* src/code/exports.lisp: New package common-lisp,
	which lisp uses.

	* src/tools/worldload.lisp:
	* src/tools/setup.lisp: Use cl-user instead of user.
	Use lisp:: instead of cl::.

	* src/tools/worldcom.lisp:
	* src/tools/snapshot-update.lisp:
	* src/tools/pclcom.lisp:
	* src/tools/mk-lisp:
	* src/tools/hemcom.lisp:
	* src/tools/config.lisp:
	* src/tools/comcom.lisp:
	* src/tools/clxcom.lisp:
	* src/tools/clmcom.lisp:
	* src/pcl/defsys.lisp:
	* src/motif/lisp/initial.lisp:
	* src/interface/initial.lisp:
	* src/hemlock/lispmode.lisp (setup-lisp-mode):
	Use cl-user instead of user.

	* src/code/save.lisp (assert-user-package):
	* src/code/print.lisp (%with-standard-io-syntax): Find
	cl-user package instead of user.

	* src/code/package.lisp (package-locks-init): Add lisp.
	(package-init): Don't add user nickname to cl-user.

	* src/code/ntrace.lisp (*trace-encapsulate-package-names*):
	Add common-lisp.

	* src/code/hash.lisp (toplevel):
	* src/code/hash-new.lisp (toplevel): Use in-package :lisp
	instead of :common-lisp.

	* src/code/float-trap.lisp (sigfpe-handler): Don't
	qualify floating-point-inexact with ext:.

	* src/pcl/simple-streams/strategy.lisp (sc):
	* src/pcl/simple-streams/null.lisp (null-read-char):
	* src/pcl/simple-streams/internal.lisp (allocate-buffer)
	(free-buffer):
	* src/pcl/simple-streams/impl.lisp (%check, %read-line)
	(%peek-char, %read-byte):
	* src/pcl/simple-streams/file.lisp (open-file-stream)
	(device-close):
	* src/pcl/simple-streams/classes.lisp (simple-stream)
	(device-close):
	* src/pcl/macros.lisp (toplevel):
	* src/pcl/braid.lisp (lisp::sxhash-instance):
	* src/pcl/env.lisp (toplevel):
	* src/compiler/generic/objdef.lisp (symbol-hash):
	* src/code/stream.lisp (read-sequence, write-sequence):
	* src/code/macros.lisp (defmacro, deftype):
	* src/code/eval.lisp (interpreted-function):
	* src/code/defstruct.lisp (defstruct):
	* src/code/debug.lisp (debug-eval-print): Use lisp:: instead
	of cl::.

Revision 1.28 - (view) (annotate) - [select for diffs]
Fri May 23 11:05:16 2003 UTC (10 years, 10 months ago) by gerd
Branch: MAIN
Changes since 1.27: +7 -1 lines
Diff to previous 1.27
	* src/pcl/macros.lisp (pcl-internal-function-name-p): New
	function.
	* src/pcl/boot.lisp (set-arg-info1): Use it instead of
	relying on valid-function-name-p to return nil as second
	value for PCL-internal functions.

Revision 1.27 - (view) (annotate) - [select for diffs]
Wed May 7 17:00:09 2003 UTC (10 years, 11 months ago) by gerd
Branch: MAIN
Changes since 1.26: +2 -2 lines
Diff to previous 1.26
	* src/pcl/macros.lisp (/show): Ignore parameter.

Revision 1.26 - (view) (annotate) - [select for diffs]
Mon May 5 11:44:56 2003 UTC (10 years, 11 months ago) by emarsden
Branch: MAIN
Changes since 1.25: +2 -2 lines
Diff to previous 1.25
  - remove extra parenthesis

Revision 1.25 - (view) (annotate) - [select for diffs]
Sun May 4 13:11:21 2003 UTC (10 years, 11 months ago) by gerd
Branch: MAIN
Changes since 1.24: +20 -66 lines
Diff to previous 1.24
	Code cleanup.  Use EXTENSIONS package to reduce clutter.

	* 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.

Revision 1.24 - (view) (annotate) - [select for diffs]
Fri Apr 18 08:54:41 2003 UTC (11 years ago) by gerd
Branch: MAIN
CVS Tags: remove_negative_zero_not_zero
Changes since 1.23: +9 -7 lines
Diff to previous 1.23
	Return block names for PCL function names.  From Eric Marsden.

	* src/pcl/macros.lisp (class-predicate, slot-accessor)
	<function names>: Return block names.

	* src/pcl/ctor.lisp (ctor) <function name>: Return a block name.

Revision 1.23 - (view) (annotate) - [select for diffs]
Sun Apr 6 09:10:09 2003 UTC (11 years ago) by gerd
Branch: MAIN
Changes since 1.22: +10 -11 lines
Diff to previous 1.22
	Fix TYPEP/SUBTYPEP problems with unfinalized and
	forward-referenced classes.

	* pcl/std-class.lisp (class-finalized-p): Method removed.
	(*allow-forward-referenced-classes-in-cpl-p*): New variable.
	(make-preliminary-layout): New function.
	(shared-initialize) <:after std-class>: Call
	make-preliminary-layout.
	(shared-initialize) <:after forward-referenced-class>: New method
	calling make-preliminary-layout.
	(shared-initialize) <:after structure-class>: Set finalized-p slot
	to true.
	(update-slots): Likewise.
	(shared-initialize) <:after condition-class>: Likewise.
	(inform-type-system-about-class): New method for
	forward-referenced classes.
	(class-has-a-forward-referenced-superclass-p): Moved to info.lisp.

	* pcl/cpl.lisp (compute-std-cpl-phase-1): Allow forward-referenced
	classes in the cpl if *allow-forward-referenced-classes-in-cpl-p*
	is true.

	* info.lisp (class-has-a-forward-referenced-superclass-p): Moved
	here from std-class.lisp.

	* pcl/cache.lisp (make-wrapper): Handle forward-referenced
	classes.

	* pcl/braid.lisp (bootstrap-initialize-class): Set the finalized-p
	slot.

	* pcl/defs.lisp (class): Add slot finalized-p.

	* pcl/rt/defclass.lisp (defclass-types.[0-5])
	(defclass-forward-referenced-class.0): New tests.

	Misc fixes.

	* pcl/defclass.lisp (expand-defclass): Remove code papering
	over a potential compiler bug.

	* pcl/macros.lisp (find-class-cell-make-instance-function-keys):
	Removed.
	(setf find-class): Add errorp and environment
	parameters, call (setf kernel::find-class) if new-value is nil.

Revision 1.22 - (view) (annotate) - [select for diffs]
Sat Mar 22 16:15:16 2003 UTC (11 years ago) by gerd
Branch: MAIN
Changes since 1.21: +83 -88 lines
Diff to previous 1.21
* bootfiles/18e/boot[12].lisp: Bootstrap files for the lisp:class
= pcl:class part.  To get it booted from 18e, cross-compile using
boot1.lisp as bootstrap.lisp in pmai's build scripts, then do a
normal compile with boot2.lisp as bootstrap.lisp with the
resulting Lisp.

* code/byte-interp.lisp, code/defstruct.lisp, code/describe.lisp:
* code/error.lisp, code/exports.lisp, code/hash-new.lisp:
* code/hash.lisp, code/macros.lisp, code/misc.lisp:
* code/package.lisp, code/pred.lisp, code/sharpm.lisp, code/type.lisp:
* compiler/dump.lisp, compiler/fndb.lisp, compiler/globaldb.lisp:
* compiler/proclaim.lisp, compiler/typetran.lisp, compiler/xref.lisp:
* compiler/generic/primtype.lisp, compiler/generic/vm-type.lisp:
Changes for to use kernel::class etc.

* code/class.lisp (toplevel): Shadow class, built-in-class etc.
(class): Give it conc-name %class-.
(toplevel) [#+bootstrap-lisp-class=pcl-class]: Define old accessors.
(everywhere): Use new class accessors.

* compiler/generic/vm-fndb.lisp (%make-instance): Change from
unsafe to flushable and movable.

* code/ntrace.lisp (expand-trace, untrace): Changes for method
tracing.

* code/profile.lisp (profile, profile-all, unprofile): Method
profiling.

* pcl/*.text, pcl/bench.lisp, pcl/extensions.lisp:
* pcl/fast-init.lisp, pcl/precom1.lisp, pcl/precom4.lisp:
* pcl/structure-class.lisp, pcl/user-instances.lisp:
Removed.

* tools/pclcom.lisp: Changes for my PCL and lisp:class =
pcl::class.

Revision 1.21 - (view) (annotate) - [select for diffs]
Tue Aug 27 19:01:39 2002 UTC (11 years, 7 months ago) by pmai
Branch: MAIN
CVS Tags: LINKAGE_TABLE, PRE_LINKAGE_TABLE, UNICODE-BASE, cold-pcl-base, release-18e, release-18e-base, release-18e-pre1, release-18e-pre2
Branch point for: UNICODE-BRANCH, cold-pcl, release-18e-branch
Changes since 1.20: +2 -2 lines
Diff to previous 1.20
Patch by Gerd Moellmann to turn old-style into new-style eval-when's in
the PCL code base.

Revision 1.20 - (view) (annotate) - [select for diffs]
Mon Aug 26 16:58:06 2002 UTC (11 years, 7 months ago) by pmai
Branch: MAIN
Changes since 1.19: +1 -50 lines
Diff to previous 1.19
Patch by Gerd Moellmann to remove unused functionality from macros.lisp.

Revision 1.19 - (view) (annotate) - [select for diffs]
Mon Aug 26 16:09:34 2002 UTC (11 years, 7 months ago) by pmai
Branch: MAIN
Changes since 1.18: +3 -33 lines
Diff to previous 1.18
Slightly frobbed patch from Gerd Moellmann that eliminates the function
EXTRACT-DECLARATIONS in favour of SYSTEM:PARSE-BODY.  This also removes
the ability for macros to expand into declarations, which isn't allowed
anymore by ANSI CL.

Revision 1.18 - (view) (annotate) - [select for diffs]
Mon Aug 26 02:23:14 2002 UTC (11 years, 7 months ago) by pmai
Branch: MAIN
Changes since 1.17: +3 -41 lines
Diff to previous 1.17
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.

Revision 1.17 - (view) (annotate) - [select for diffs]
Sat Aug 24 13:46:52 2002 UTC (11 years, 7 months ago) by pmai
Branch: MAIN
Changes since 1.16: +3 -32 lines
Diff to previous 1.16
Patch by Gerd Moellmann to remove PCL's variant of once-only,
replacing it by the version already present in CMUCL.

Revision 1.16 - (view) (annotate) - [select for diffs]
Mon Aug 19 16:52:09 2002 UTC (11 years, 8 months ago) by pmai
Branch: MAIN
Changes since 1.15: +1 -91 lines
Diff to previous 1.15
Slightly mangled patch by Gerd Moellmann to remove PCL's own version
of destructuring-bind in favour of the ANSI CL version already in
CMUCL.

Revision 1.15 - (view) (annotate) - [select for diffs]
Tue Mar 13 15:49:48 2001 UTC (13 years, 1 month ago) by pw
Branch: MAIN
Changes since 1.14: +15 -15 lines
Diff to previous 1.14
Change toplevel PROCLAIMs to DECLAIMs.

Revision 1.14 - (view) (annotate) - [select for diffs]
Sun May 30 23:14:03 1999 UTC (14 years, 10 months ago) by pw
Branch: MAIN
Changes since 1.13: +15 -55 lines
Diff to previous 1.13
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.

Revision 1.13 - (view) (annotate) - [select for diffs]
Sun Apr 25 12:46:28 1999 UTC (14 years, 11 months ago) by pw
Branch: MAIN
Changes since 1.12: +6 -4 lines
Diff to previous 1.12
Revision 1.12 for FIND-CLASS broke the PCL build process. This is a
better fix (suggested by Douglas) in that FIND-CLASS-CELL as called
from FIND-CLASS is not allowed to produce any side effects. This
restores the build process and lets (find-class :x nil) => NIL
as relied on by some codes.

Revision 1.12 - (view) (annotate) - [select for diffs]
Thu Apr 15 22:38:15 1999 UTC (15 years ago) by pw
Branch: MAIN
Changes since 1.11: +4 -3 lines
Diff to previous 1.11
fix find-class (when called with nil second arg) to be silent
even if the supplied class name is invalid.

Revision 1.11 - (view) (annotate) - [select for diffs]
Sun Mar 14 01:14:14 1999 UTC (15 years, 1 month ago) by dtc
Branch: MAIN
Changes since 1.10: +3 -225 lines
Diff to previous 1.10
Further cleanup of the code now that the :SETF feature is assumed standard.

Revision 1.10 - (view) (annotate) - [select for diffs]
Sun Dec 20 04:30:21 1998 UTC (15 years, 4 months ago) by dtc
Branch: MAIN
Changes since 1.9: +4 -0 lines
Diff to previous 1.9
Add CMUCL style file-comments; from Peter Van Eynde.

Revision 1.9 - (view) (annotate) - [select for diffs]
Tue Jan 20 13:04:09 1998 UTC (16 years, 2 months ago) by pw
Branch: MAIN
Changes since 1.8: +1 -3 lines
Diff to previous 1.8
Fix a programming error that was flagged by Python unreachable code warning.

Revision 1.8 - (view) (annotate) - [select for diffs]
Sun Dec 14 20:41:00 1997 UTC (16 years, 4 months ago) by pw
Branch: MAIN
Changes since 1.7: +5 -9 lines
Diff to previous 1.7
This set of changes enables the use of forward referenced classes in PCL.
The problem was(is) that the wrapper object needed to connect the Lisp
type system to PCL classes doesn't exist until the forward-referenced-class
is defined. At that time all the subclasses of it are initialized and
wrappers attached. In the meantime, the actual forward referenced class is
an instance of pcl::forward-referenced-class and any subclasses are
pcl class instances with most slots nil.

The fix herein arranges for UPDATE-LISP-CLASS-LAYOUT to also set
the lisp:class-name and use (setf lisp:find-class) to connect the
new layout to the Lisp class system.

An undesired consequence of this is that DEFCLASS can't return a valid
class object unless all superclasses are defined. This shouldn't be a
real problem as the classes can't be used in the intermediate state,
but the HyperSpec says DEFCLASS returns a class object. We return
a valid class object or NIL.

Revision 1.7 - (view) (annotate) - [select for diffs]
Thu Feb 6 21:24:14 1997 UTC (17 years, 2 months ago) by pw
Branch: MAIN
CVS Tags: RELEASE_18a
Branch point for: RELENG_18
Changes since 1.6: +47 -7 lines
Diff to previous 1.6
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.

Revision 1.6 - (view) (annotate) - [select for diffs]
Tue Jan 12 18:25:48 1993 UTC (21 years, 3 months ago) by phg
Branch: MAIN
Branch point for: cmu
Changes since 1.5: +26 -45 lines
Diff to previous 1.5
September-16-92-PCL-e has been incorporated into the CMUCL sources thanks
to Rick Harris.

Revision 1.5 - (view) (annotate) - [select for diffs]
Mon Nov 9 15:20:44 1992 UTC (21 years, 5 months ago) by ram
Branch: MAIN
Changes since 1.4: +128 -267 lines
Diff to previous 1.4
This is September 92 PCL.

Revision 1.4 - (view) (annotate) - [select for diffs]
Sat Aug 1 15:29:19 1992 UTC (21 years, 8 months ago) by ram
Branch: MAIN
Changes since 1.3: +290 -136 lines
Diff to previous 1.3
This is July 92 PCL

Revision 1.3 - (view) (annotate) - [select for diffs]
Mon Jun 1 18:38:30 1992 UTC (21 years, 10 months ago) by ram
Branch: MAIN
Branch point for: patch_16
Changes since 1.2: +319 -9 lines
Diff to previous 1.2
This is March-92-PCL-2a.

Revision 1.2 - (view) (annotate) - [select for diffs]
Sat Oct 19 17:23:05 1991 UTC (22 years, 6 months ago) by ram
Branch: MAIN
Changes since 1.1: +3 -0 lines
Diff to previous 1.1
Merged with latest PCL version.

Revision 1.1 - (view) (annotate) - [select for diffs]
Sun Aug 12 03:47:43 1990 UTC (23 years, 8 months ago) by wlott
Branch: MAIN
Initial revision

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.

  Diffs between and
  Type of Diff should be a

Sort log by:

  ViewVC Help
Powered by ViewVC 1.1.5