Current:
(defun module-provide-system (module) (let ((*readtable* (copy-readtable nil))) (handler-case (load-system-file (string-downcase (string module))) (t (e) (unless (and (typep e 'error) (search "Failed to find loadable system file" (format nil "~A" e))) (format *error-output* "Failed to require ~A because '~A'~%" module e)) nil))))
First, t is too strong - warns will kill it. Second, why not let the debugger handle it if there is an error?
-Alan
On 5/11/10 7:34 PM, Alan Ruttenberg wrote:
Current:
(defun module-provide-system (module) (let ((*readtable* (copy-readtable nil))) (handler-case (load-system-file (string-downcase (string module))) (t (e) (unless (and (typep e 'error) (search "Failed to find loadable system file" (format nil "~A" e))) (format *error-output* "Failed to require ~A because '~A'~%" module e)) nil))))
First, t is too strong - warns will kill it.
Agreed.
Second, why not let the debugger handle it if there is an error?
The debugger may not yet be in place, as REQUIRE is used by system code to indicate dependencies.
Maybe we should redefine MODULE-PROVIDE-SYSTEM once the debugger is in place?
armedbear-devel@common-lisp.net