<HTML><BODY><p>#lang racket<br>(define-syntax (test stx)<br> #'(begin-for-syntax (displayln "Compiling")))</p><p>(test)<br><br>When run it gives:<br></p><p>Compiling<br>Compiling<br><br>Why it runs test twice?<br><br>And if I require it, then it triples:<br></p><p>Compiling<br>Compiling<br>Compiling<br><br>What's wrong?</p><br>-- <br>Roman Klochkov</BODY></HTML>