Are you looking for the "reify-syntax-class" form from syntax/parse/experimental/reflect, perhaps?<br><br><a href="http://docs.racket-lang.org/syntax/Experimental.html?q=syntax/parse#%28form._%28%28lib._syntax/parse/experimental/reflect..rkt%29._reify-syntax-class%29%29">http://docs.racket-lang.org/syntax/Experimental.html?q=syntax/parse#%28form._%28%28lib._syntax/parse/experimental/reflect..rkt%29._reify-syntax-class%29%29</a><br>
<br clear="all">Carl Eastlund<br><br><div class="gmail_quote">On Mon, Feb 27, 2012 at 3:32 PM, Jon Rafkind <span dir="ltr"><<a href="mailto:rafkind@cs.utah.edu">rafkind@cs.utah.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
Ok but it still doesn't work if I take out the (begin-for-syntax).<br>
<br>
(define-syntax-class x)<br>
<br>
Now its defined at phase 0. Anyway if I can get the syntax class I
can access its attributes (ryan said it was ok).<div><div class="h5"><br>
<br>
On 02/27/2012 01:28 PM, Carl Eastlund wrote:
<blockquote type="cite">You've bound x at phase 1, but you're looking up a
phase 0 binding here.<br>
<br>
Bug aside, I had no idea there was anything meaningful for
external users to do with the values underlying syntax classes.
What does the value let you do?<br>
<br clear="all">
Carl Eastlund<br>
<br>
<div class="gmail_quote">On Mon, Feb 27, 2012 at 3:21 PM, Jon
Rafkind <span dir="ltr"><<a href="mailto:rafkind@cs.utah.edu" target="_blank">rafkind@cs.utah.edu</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I thought syntax-local-value would produce the syntax-class
object that a given identifier is bound to but it errors out
with 'x is not defined as syntax'. Any ideas why? There is one
part of my original code base where this works and another
where it doesn't. I cannot seem to replicate the part that
works in a small test case.<br>
<br>
#lang racket<br>
<br>
(require (for-syntax syntax/parse))<br>
<br>
(begin-for-syntax<br>
(define-syntax-class x))<br>
<br>
(define-syntax (bar stx)<br>
(syntax-case stx ()<br>
[(_ name) (syntax-local-value #'name)]))<br>
<br>
(bar x)<br>
</blockquote>
</div>
</blockquote>
<br>
</div></div></div>
</blockquote></div><br>