Hello!

"Jose A. Ortega Ruiz" <j...@gnu.org> writes:

> On Wed, Sep 01 2010, Ludovic Courtès wrote:
>
>> Hi!
>>
>> "Jose A. Ortega Ruiz" <j...@gnu.org> writes:
>>
>>> (I'm still curious about the meaning of the
>>> modules with gensyms as names, though.)
>>
>> psyntax expects modules to have a name so that it can refer to them in
>> expanded code.  Thus, there can be no anonymous modules: modules are
>> always given a name, see ‘module-name’.  This allows things like the
>> “compile in fresh module” test to work.
>
> I see. But then, aren't those modules something internal to psyntax's
> workings?

No, they’re not internal.  They’re just (pseudo-)anonymous modules that
ended up in the module hierarchy, like any other module.  Evaluate
(module-name (make-module)) and you’ve added another one.  :-)

> And if so, shouldn't they be filtered out from the return value of
> module-submodules (or not be traversed by the apropos-fold)? As a user
> of those procedures, i find the appearance of those modules a bit
> confusing (the only use case in client code i can think of is when
> using the return value of current-module). Am i missing something?

I agree that as users we’d rather not see these modules, especially from
Geiser.  But they have to be there.

So, unless I’m missing an elegant design trick to avoid this, I think
you’re bound to use heuristics to filter them out (e.g., get rid of
modules whose name contains white spaces.)

Thanks,
Ludo’.


Reply via email to