[armedbear-devel] over-agressive handler for module-provide-system
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? -- "A screaming comes across the sky. It has happened before, but there is nothing to compare to it now."
participants (2)
-
Alan Ruttenberg
-
Mark Evenson