On Mon, Mar 17, 2008 at 8:43 PM, Taylor R Campbell <<a href="mailto:campbell@mumble.net">campbell@mumble.net</a>> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br><div class="Ih2E3d">  hygiene when necessary. And frankly, good old define-macro is hard to beat<br>
   for that, no matter how groovy syntax-case appears to everyone.<br>
<br>
</div>This is absurd.  </blockquote><div><br>It's a matter of emphasis, Taylor. I write better than 90% of my macros in SYNTAX-RULES. I *like* hygiene.<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
offered by every reasonable programmatic macro system out there, not<br>
merely SYNTAX-CASE, </blockquote><div><br>SYNTAX-CASE and explicit renaming (Larceny & S48, IIRC) are the main ones I'm aware of. Are there other major contenders?<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
yet long experience has shown that this is almost<br>
always a mistake; </blockquote><div><br>I never said anything different. But for the rare cases where hygiene breaking is desired, I find the semi-hygienic systems to be awfully cryptic.<br><br>And since I'm not interested in a religious advocacy war over hygiene, I'd like to know how you think module/namespace-based renaming is an adequate substitute for true hygiene in macros? Because I just don't see it. Module-based renaming and macrotic renaming operate at sufficiently different levels of detail as to seem like rather different operators to me.<br>
<br>david rush<br></div></div>-- <br>Once you label me, you negate me<br> - Soren Kierkegaard