On Monday, Mar 24, 2003, at 06:05 America/New_York, Daniel Barlow wrote:
> Redefining functions in the COMMON-LISP package is not conforming
> code, and is also ever so slightly annoying in an implementation (such
> as SBCL) that actually _uses_ the existing REQUIRE for anything
> * (require 'istr)
> debugger invoked on condition of type SB-INT:SIMPLE-FILE-ERROR:
> error opening #P"/home/dan/src/defsystems/istr.system":
> No such file or directory
> [partial backtrace]
> 3: ("hairy arg processor for MAKE:FIND-SYSTEM" ISTR :LOAD-OR-NIL NIL)
> 4: ("hairy arg processor for MAKE::NEW-REQUIRE" ISTR NIL NIL NIL NIL)
> Incidentally, recent SBCL now provides hooks so that defsystem-like
> facilities can add themselves to the default REQUIRE list in a polite
Yes, but (a) this is implementation dependent and (b) PROVIDE and
REQUIRE are deprecated.
Not that (a) is that important given the features cruft in MK3.
However, (b) is in the CLHS. I refrain from using PROVIDE and REQUIRE
in any code I write (unless so dictated by the underlying
implementation - e.g. in LW I have to do (REQUIRE "COM") to load the MS
NYU Courant Bioinformatics Group tel. +1 - 212 - 998 3488
715 Broadway 10th FL fax. +1 - 212 - 998 3484
New York, NY, 10003, U.S.A.