Hi Jos - <br><br>Thanks for the quick response and the helpful answer (the references/example are great).&nbsp; My motivation for having a conditional define is to make it play nice with the module system, which doesn&#39;t work well when having multiple definitions with the same name.&nbsp; I was hoping there is an &quot;automated&quot; way of detecting whether a symbol is already defined in the current module, if so, either override or not import the definition.&nbsp; 
<br><br>Of course this is probably circumventing module&#39;s design (seems that module is *a lot* stricter than REPL by design), but I am certainly curious on how this could be done.&nbsp; Seems like that compiler would have to keep symbol table(s) internally for all of the defined symbols in order to throw the &quot;already defined&quot; error... ;) 
<br><br>Thanks, <br>yinso <br><br><br> <div><span class="gmail_quote">On 4/22/07, <b class="gmail_sendername">jos koot</b> &lt;<a href="mailto:jos.koot@telefonica.net">jos.koot@telefonica.net</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">






<div bgcolor="#ffffff">
<div>Oops, the contra-example should read:</div>
<div dir="ltr">&nbsp;</div>
<div dir="ltr">(require (lib &quot;etc.ss&quot;))</div>
<div>&nbsp;</div>
<div dir="ltr"><span class="q">(define-syntax my-define<br>&nbsp;(syntax-rules ()<br>&nbsp; 
((my-define (name . args) . body) (my-define name (lambda args . 
body)))<br>&nbsp; ((my-define var value)<br></span>&nbsp;&nbsp; (define var ; &lt;== 
correction<span class="q"><br>&nbsp;&nbsp;&nbsp; (begin<br>&nbsp;&nbsp;&nbsp;&nbsp; (printf 
&quot;my-define ~a status is ~s~n&quot; &#39;var<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (if 
(namespace-defined? &#39;var) &#39;defined &#39;undefined))<br>&nbsp;&nbsp;&nbsp;&nbsp; 
value)))))</span></div><span class="q">
<div>&nbsp;</div>
<div dir="ltr">(if (read) (namespace-set-variable-value! &#39;b 2))<br>(my-define b 
2)</div>
<div dir="ltr"></div>
<div dir="ltr">&nbsp;</div>
<div dir="ltr">Jos Koot</div></span></div>
</blockquote></div><br><br clear="all"><br>-- <br><a href="http://www.yinsochen.com">http://www.yinsochen.com</a><br>...continuous learning...