On Mon, 2009-05-04 at 12:26 +0300, Abdulaziz Ghuloum wrote: > On May 4, 2009, at 12:22 PM, Derick Eddington wrote: > > > If > > a separately-compiled library is freshly loaded, it will be visited > > but > > not expanded, which means the already-expanded-and-compiled code > > for the > > exported top-level syntax definitions is evaluated. > > A library is visited (i.e., its syntax definitions are evaluated) when > you use one of the macros that it defined exports.
Right, of course. That's what I had always thought, but then I confused myself by forgetting to separately compile and then seeing my visit time print-out which made me think visiting always happens but invoking is on-demand. I'm glad I was wrong about this. Be careful of confusing yourself. On Mon, 2009-05-04 at 02:22 -0700, Derick Eddington wrote: > I suspect Ikarus is not visiting the dummy macro definitions because > they are not exported. They have been discarded after expansion and > compilation because Ikarus sees they are not exported and so it figures > they're no longer needed. But I could be wrong. I was wrong about this too. It looks like unexported syntax definitions are kept after separate compilation and are visited. -- : Derick ----------------------------------------------------------------
