Okay, so I had not understood the sense of "non hygienic".<br><br>> Once compiled all your scheme code can play together nicely.<br>
<div><div class="h5">But what if I run all the code with the interpreter?<br><br></div></div>And why is define-syntax deactivated by default?<br><br>The idea is that I think it is a good habit when programming to learn the standard, and then use extensions to carry out the things which can't be done (or can't easily be done) with the standard.<br>
<br><div class="gmail_quote">2010/7/30 Frederick LeMaster <span dir="ltr"><<a href="mailto:fred.lemaster@gmail.com">fred.lemaster@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
First off, define-macro predates define-syntax. Also, sometimes you<br>
need a macro system that is nonhygenic, such as when you want to<br>
inject new symbols into the environment. Once compiled all your scheme<br>
code can play together nicely.<br>
<div><div></div><div class="h5"><br>
On Fri, Jul 30, 2010 at 1:50 PM, Yves Parès <<a href="mailto:limestrael@gmail.com">limestrael@gmail.com</a>> wrote:<br>
> Hello!<br>
><br>
> I'm new to scheme and gambit. I've read "A tour of scheme in Gambit", and<br>
> now I'm learning the language through "The scheme programming language"<br>
> (<a href="http://www.scheme.com/tspl3/" target="_blank">http://www.scheme.com/tspl3/</a>).<br>
> My question concerns define-syntax VS define-macro.<br>
> If I understood well, the first is standard scheme (*) whereas the latter is<br>
> not. Besides, "A tour of scheme in Gambit" qualifies define-macro as<br>
> "unhygienic" (**). Moreover (as I am from Haskell), I find define-syntax's<br>
> pattern-matching simpler. So:<br>
> 1) What is the point of define-macro? Why does "A tour of Scheme in Gambit"<br>
> encourages to use it, since it doesn't detail define-syntax?<br>
> 2) Why does gambit run by default in a non-standard mode (Gambit scheme, gsc<br>
> -:S) in which define-syntax doesn't exist whereas it is standard?<br>
> 3) I plan to use termite, which uses Gambit Scheme and not standard scheme<br>
> (gsc -:s). Can gambit scheme code call to procedures written in standard<br>
> scheme?<br>
><br>
> Thanks!<br>
><br>
> (*) By 'standard' I mean R5RS.<br>
> (**) Word which, from my newbie point of view, kind of sounds like "evil" or<br>
> "don't-you-touch-it".<br>
><br>
</div></div>> _______________________________________________<br>
> Gambit-list mailing list<br>
> <a href="mailto:Gambit-list@iro.umontreal.ca">Gambit-list@iro.umontreal.ca</a><br>
> <a href="https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list" target="_blank">https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list</a><br>
><br>
><br>
</blockquote></div><br>