1. Can anyone comment on the strengths/weaknesses of lsp/serror.lsp?
2. Are we allowed in the spec fo intern a special symbol in a special
package to hold '(setf ...) functions in the conventional manner?
I.e. (defun (setf foo) nil (bar)) -> (si::putprop 'foo (defun
setf::setf-foo nil (bar)) si::'setf-function)?
3. What is the best way to centralize on one definition of
si::break-level, for example, and merely wrap it in the condition
handling stuff when the conditions package is loaded? (i.e. as
opposed to having two separate definitions to keep in sync. The
new definition uses macros which only make sense in the conditions
pacakge. The best I can think of is something like:
gcl_top.lisp:
(in-package 'si)
(defmacro proto-with-simple-restart (&rest r) `(progn ,@r))
...
(defconstant +break-level-source+ (lambda (...) (proto-with-simple-restart
...)))
(defun break-level (...)
(funcall +break-level-source+ ....))
gcl_clcs_top_patches.lisp:
(in-package 'si)
(defun break-level (...)
(macrolet ((proto-with-simple-restart (&rest r)
`(with-simple-restart ,@r)))
(funcall +break-level-source+ ....)))
We cannot use (si::function-src 'break-level) as this is already
macroexpanded. And we need a version which will work in the cltl1
image too.
Take care,
--
Camm Maguire [EMAIL PROTECTED]
==========================================================================
"The earth is but one country, and mankind its citizens." -- Baha'u'llah
_______________________________________________
Gcl-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/gcl-devel