[plt-dev] syntax-local-value and identifier-mappings

From: Sam TH (samth at ccs.neu.edu)
Date: Wed Mar 18 15:31:23 EDT 2009

On Tue, Mar 17, 2009 at 5:07 PM, Matthew Flatt <mflatt at cs.utah.edu> wrote:
>
> This change is in SVN as v4.1.5.2.

This doesn't seem to be working for me.  In particular, this program
(also attached) gives an error from `free-identifier-mapping-get', but
I think it should succeed.

#lang scheme/load

(module m scheme
  (require (for-syntax syntax/boundmap))
  (define-for-syntax table (make-free-identifier-mapping))
  (define-syntax x 1)
  (define-syntax x* (make-rename-transformer #'x))
  (begin-for-syntax
    (free-identifier-mapping-put! table #'x 'got-it))
  (define-syntax (get stx)
    (syntax-case stx ()
      [(_ i)
       #`(quote #,(free-identifier-mapping-get table #'i))]))
  (provide (rename-out [x* x]) get))

(module n scheme
  (require 'm)
  (get x))

(require 'n)

Am I doing something wrong here?

Thanks,
-- 
sam th
samth at ccs.neu.edu
-------------- next part --------------
A non-text attachment was scrubbed...
Name: id-map-bug.ss
Type: application/octet-stream
Size: 511 bytes
Desc: not available
URL: <http://lists.racket-lang.org/dev/archive/attachments/20090318/086e1e6a/attachment.obj>

Posted on the dev mailing list.