Christophe Rhodes <[EMAIL PROTECTED]> writes: > Chisheng Huang <[EMAIL PROTECTED]> writes: > >> "Paul Werkowski" <[EMAIL PROTECTED]> writes: >> >>> | lisp -quiet -noinit -nositeinit -eval '(progn (load "zz") (babu::hello) >>> (quit))' >>> | you get an error: >>> | [...] >>> | What did I do wrong? >>> | >>> >>> Your expectations, I think. >>> >>> At the time the reader handles the progn form, it is in the cl-user package >>> and the babu package is not yet defined. >> >> How do you explain this one? >> >> lisp -quiet -noinit -nositeinit -eval '(progn (load "zz") (print >> (find-package :babu)) (quit))' >> >> It does not complain the babu package is not there. > > Well, think about Paul's explanation: at the time the reader handles > /this/ progn form, it only needs to read symbols for which packages > exist. Your original form contains a symbol which presumably has a > package defined in the "zz" file, but at the time that the reader > acts, the evaluator has not executed any of the forms.
Now I finally got it after reading this and Paul's explanation a couple of times. Many thanks to Paul and Christophe. Best wishes, -cph
