Quesstion about Alt-. navigation to function definitions
Christophe Rhodes
csr21 at cantab.net
Wed Oct 30 20:53:17 UTC 2013
Jeffrey Cunningham <jeffrey at jkcunningham.com> writes:
> According to the ASDF documentation:
> http://common-lisp.net/project/asdf/asdf.html#Using-ASDF
>
> The system foo is loaded (and compiled, if necessary) by evaluating
> the following Lisp form:
> (asdf:load-system :foo)
> On some implementations (namely recent versions of ABCL, Allegro CL,
> Clozure CL, CMUCL, ECL, GNU CLISP, LispWorks, MKCL, *SBCL* and XCL),
> ASDF hooks into the |CL:REQUIRE| facility and you can just use:
> (require :foo)
> Is this not correct?
It is correct. Evaluating (asdf:load-system :foo) or (require :foo)
will (compile and) load the :foo system.
However, when you compile a file containing
(require :foo)
(describe 'foo::bar)
you do not evaluate the `(require :foo)' form; you generate code such
that, when you later load the file, (require :foo) will be executed. So
when the compiler attempts to read the next form, (describe 'foo::bar),
the symbol 'foo::bar does not yet exist, because nothing has yet
happened to cause the "FOO" package to be created.
Christophe
More information about the slime-devel
mailing list