[plt-scheme] Macro question

From: David Van Horn (dvanhorn at cs.uvm.edu)
Date: Sat May 24 16:57:45 EDT 2003

Benderjg2 at aol.com wrote:
> In a message dated 5/23/2003 10:13:07 PM Central Daylight Time, 
> mcj4 at ukc.ac.uk writes:
> 
> 
>>I get a complaint about #%app not being bound, in particular with respect 
>>to my calls to 
>>'vector-ref'. I've read the docs on this a few times; I don't think it's 
>>unclear, but I do think I 
>>don't understand.
> 
> 
> This error message should be really read as "macro messed with the hygiene;
> the module system detects that the author got the hygiene marks wrong" ;)

Although I sometimes see this error message even when I'm not messing with
hygiene.

Eg.

(define-syntax id
  (let-syntax ((never-used (syntax-rules ())))
    (syntax-rules ()
      ((_ e) e))))

compile: bad syntax; function application is not allowed, because no #%app
syntax transformer is bound in: (syntax-rules ())

Is this a bug perhaps?  Scheme48 happens to accept it.

-d




Posted on the users mailing list.