[plt-scheme] Not so hygienic macros?

From: michael rice (nowgate at yahoo.com)
Date: Mon Dec 28 10:51:58 EST 2009

Oddly, the problem seems to have vanished, after I switched from Swindle to PrettyBig, and back again. Will post something more substantial if it reappears.



--- On Mon, 12/28/09, Robby Findler <robby at eecs.northwestern.edu> wrote:

From: Robby Findler <robby at eecs.northwestern.edu>
Subject: Re: [plt-scheme] Not so hygienic macros?
To: "michael rice" <nowgate at yahoo.com>
Cc: plt-scheme at list.cs.brown.edu
Date: Monday, December 28, 2009, 10:39 AM

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


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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20091228/6a5f7b64/attachment.html>

Posted on the users mailing list.