[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[rose@GODOT.THINK.COM: option for recovering proclamations]



Date: Tue, 01 Apr 1986 13:15:00 -0000
From: rose@think.THINK.COM

You could shadow LISP:PROCLAIM with STARLISP:PROCLAIM, making the latter
a macro which squirrels away its info, and also expands to a LISP:PROCLAIM.

Package hackery to make this happen:
	(SHADOW 'LISP:PROCLAIM 'STARLISP-INTERNALS)
	(EXPORT 'STARLISP-INTERNALS::PROCLAIM 'STARLISP-INTERNALS)
	(DEFMACRO STARLISP-INTERNALS:PROCLAIM (DECLARATION)
	  `(PROGN (GOBBLE ',DECLARATION) (LISP:PROCLAIM ,DECLARATION)))
	(DEFMACRO USE-STARLISP ()
	  `(PROGN (USE-PACKAGE 'STARLISP) (IMPORT 'STARLISP-INTERNALS:PROCLAIM)))
	;; And so:
	(IN-PACKAGE 'MY-APPLICATION)
	(USE-STARLISP)
	(PROCLAIM ...)

Small reward.  You still have to code-walk for the (DECLARE...) forms.