>>>>> "Breanndán" == Breanndán <Ó Nualláin <bon@illc.uva.nl>> writes:
Breanndán> Either there's a bug in module shadowing or else there's a bug in my
Breanndán> understanding of module shadowing. I'd quite like to know which one.
Breanndán> It pertains to shadowing of the MEMBER procedure by SRFI-1 isolated
in
Breanndán> this snippet:
Breanndán> (define-structure s-foo
Breanndán> (export (foo :syntax))
Breanndán> (open scheme srfi-1)
Breanndán> (begin
Breanndán> (define-syntax foo
Breanndán> (syntax-rules ()
Breanndán> ((foo x) (member x '(1 2 3) =))))))
Breanndán> I expect expansions of foo to contain the SRFI-1 extension of MEMBER
Breanndán> which can take an equality predicate as an optional third argument.
Breanndán> However the expansion grabs the MEMBER from scheme-level-1:
Yes; you need to use the structure calculus (described in the manual)
to omit or qualify one of the two definitions.
--
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla
|