[plt-scheme] Not so hygienic macros?

From: Robby Findler (robby at eecs.northwestern.edu)
Date: Mon Dec 28 10:39:02 EST 2009

That doesn't sound like a lack of hygiene.

Its hard to tell what is going on without a program, but my guess is
that you wrote a program that boils down to this one:

  #lang scheme
  (set! match 5)

and the error message is telling you that you're trying to assign to
one of the imports to your library.

Note that if you had written this:

  #lang scheme
  (define match 6)
  (set! match 5)

the definition of 'match' in the body of the module would have
shadowed the import and you'd just get the local version of match
only.

hth,
Robby


On Mon, Dec 28, 2009 at 9:28 AM, michael rice <nowgate at yahoo.com> wrote:
>
> I have a function named MATCH and I seem to be mixing it up with underlying macro code. At least that's what I think is happening.
>
> The error message: set!: cannot mutate syntax identifier in: match
>
> Must I change the name of my function?
>
> Michael
>
>
> _________________________________________________
>  For list-related administrative tasks:
>  http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>


Posted on the users mailing list.