<div>In case any lurkers like me are interested.</div>
<div><a href="http://blog.racket-lang.org/2011/04/writing-syntax-case-macros.html">http://blog.racket-lang.org/2011/04/writing-syntax-case-macros.html</a></div>
<div> </div>
<div>Stephen</div>
<div><br> </div>
<div class="gmail_quote">On Tue, Apr 5, 2011 at 12:51 AM, Robby Findler <span dir="ltr">&lt;<a href="mailto:robby@eecs.northwestern.edu">robby@eecs.northwestern.edu</a>&gt;</span> wrote:<br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div class="im">On Mon, Apr 4, 2011 at 6:25 PM, Eli Barzilay &lt;<a href="mailto:eli@barzilay.org">eli@barzilay.org</a>&gt; wrote:<br>&gt; Four hours ago, Robby Findler wrote:<br>&gt;&gt;<br>&gt;&gt; It looks like a great macro essay for a certain crowd (altho the<br>
&gt;&gt; essay seems to insult that selfsame crowd; perhaps you are assuming<br>&gt;&gt; that that crowd is into S&amp;M?).<br>&gt;<br>&gt; Where&#39;s the insult?  (I didn&#39;t mean any insult -- the only thing I can<br>
&gt; think of is the &quot;nostalgia&quot; reference, which is not an insult but the<br>&gt; often expressed sentiment for &quot;a simple system, like `defmacro&#39;&quot;.)<br><br></div>Well, the scare quotes are a way to put down things, generally speaking.<br>

<div class="im"><br>&gt;<br>&gt;&gt; Some comments:<br>&gt;&gt;<br>&gt;&gt;  - I probably would have used #` in the second while macro. Yes, I<br>&gt;&gt; see you mention it later, but doing it at that point seems to fit<br>
&gt;&gt; with what the reader&#39;s been given at that point<br>&gt;<br>&gt; Well, that&#39;s one point where the purpose of the document is different<br>&gt; from a generic guide: my main goal was to write a quick intro to<br>
&gt; people who are familiar with `defmacro&#39; -- so I wanted to make it very<br>&gt; clear that it&#39;s the same kind of thing, only with wrapped sexprs<br>&gt; instead of raw ones.  In this case, I think that the long route is<br>
&gt; better -- it shows that the extra tools (like #`) make things easier<br>&gt; only after you&#39;re aware of what goes on (and the fact that there&#39;s no<br>&gt; complicated magic involved, which is the frequent complain against<br>
&gt; `syntax-case&#39;).<br><br></div>Yes, and the second while macro is a fine place to say that, in my<br>opinion. Indeed, it seems like the most natural point to go to next<br>and then to continue later to say what is happening with the # on the<br>
front. This is just how your text is already building (in a good way<br>imo).<br>
<div class="im"><br>&gt;<br>&gt;&gt;  - it would be good if you did some kind of a computation at compile<br>&gt;&gt; time, preferably to demonstrate an interesting computation one<br>&gt;&gt; should want to do at compile time. Maybe a macro that embeds a<br>
&gt;&gt; formatted source location into its output?<br>&gt;<br>&gt; Good idea, I&#39;ll add something.<br>&gt;<br>&gt;<br>&gt;&gt;  - cpp macros are, I believe, based on lexemes, not strings (so you<br>&gt;&gt; cannot have an unclosed string in a macro or something).<br>
&gt;<br>&gt; Yeah, I couldn&#39;t find a way to phrase it better than stick a random<br>&gt; &quot;roughly&quot; in.  Using &quot;lexemes&quot; is a good word to describe it, but it&#39;s<br>&gt; a little too opaque -- any ideas for something more light?<br>
<br></div>&quot;lexical tokens, like strings, parens, ...&quot;?<br>
<div class="im"><br>&gt;<br>&gt;&gt; At least nowadays they are.<br>&gt;<br>&gt; Yes -- I definitely have used `#define&#39;s with a double-quote opener.<br><br></div>I think you can still pass an arg to gcc to get the old behavior back.<br>
<font color="#888888"><br>Robby<br></font>
<div>
<div></div>
<div class="h5"><br>_________________________________________________<br> For list-related administrative tasks:<br> <a href="http://lists.racket-lang.org/listinfo/users" target="_blank">http://lists.racket-lang.org/listinfo/users</a></div>
</div></blockquote></div><br><br clear="all"><br>