On Apr 13, 2015, at 8:40 AM, Matthew Flatt <[email protected]> wrote:
> Most packages build ok using the above snapshot: > > http://next-pkg-build.racket-lang.org.s3-website-us-west-2.amazonaws.com/ > > Several failures are "ambiguous binding" errors. That error usually > indicates an unavoidable incompatibility between the old and new macro > systems. I'm interested to hear whether the package authors can > understand the errors and fix them and whether the incompatibilities > seem manageable. For a “hygienic" reader-extension, that outputs syntax with lexical context telling it where an identifier should be from so it isn’t captured, what should I do in the new expander? For example the afl and rackjure pkgs both provide a reader extension that looks like for example: #λ(+ % 1) Which is read as: (sort of) (lambda (%) (+ % 1)) Where the `lambda` identifier has lexical context that says that it comes from racket/base. But with the new macro expander, I’m seeing errors like this: lambda: identifier's binding is ambiguous context...: #(42661 module) #(42683 module reader 0) #(42873 module) #(42874 module test-afl-at-exp-racket 0) #(43994 local) #(43995 intdef) matching binding...: #<module-path-index:(racket/base)> #(42661 module) #(42683 module reader 0) matching binding...: #<module-path-index:(racket/base)> #(42661 module) #(42683 module reader 0) matching binding...: #<module-path-index:(racket/base)> #(42873 module) #(42874 module test-afl-at-exp-racket 0) in: lambda compilation context...: /home/racket/build-pkgs/user/.racket/snapshot/pkgs/afl/afl/tests/test-afl-at-exp-racket.rkt So, is there a way to do this in the new macro expander? -- 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/54C8E4C1-54E2-4D6B-9803-B0CB3D878B1D%40knauth.org. For more options, visit https://groups.google.com/d/optout.
