I’ve found an error that I believe is the fault of my curly-fn package under
the new macro-expander, but it’s a little bit odd, and I’m having trouble
figuring out exactly what the problem is. Specifically, the error doesn’t occur
within the curly-fn package itself, only a package that depends on it, and even
then I’ve only managed to reproduce the error using two files. Trying to cause
the same problem using submodules doesn’t work, either.
The simplest possible test case I’ve found to reproduce the problem is as
follows:
; ambiguous.rkt
#lang curly-fn racket/base
#{values}
; dependent.rkt
#lang racket/base
(require "ambiguous.rkt")
An error is signaled by ‘dependent.rkt’:
let: identifier's binding is ambiguous
context:
#(21084 module) #(21093 module curly-parser 0) #(113962 module)
#(113963 module ambiguous 0)
matching binding:
#<module-path-index:(racket/base)>
#(113962 module) #(113963 module ambiguous 0)
matching binding:
#<module-path-index:(racket/base)>
#(21084 module) #(21093 module curly-parser 0) in: let
If I understand this correctly, this means that for some reason, there are
conflicting bindings for ‘let’ in this example, probably due to how my curly-fn
meta-language provides identifiers (and uses ‘let’ from racket/base in its
expansion), but I really have no idea why this is manifesting in this way, nor
do I know how to fix it.
Could anyone point me to what exactly is wrong here?
Alexis
--
You received this message because you are subscribed to the Google Groups
"Racket Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/racket-dev/B5D45B8F-6059-4104-AC35-CB0B683EFFBA%40gmail.com.
For more options, visit https://groups.google.com/d/optout.