<p dir="ltr">But the example shows SAMPLE2 being executed not =SAMPLE2.</p>
<p dir="ltr">Tersely pecked on a Nexus 5<br>
</p>
<div class="gmail_quote">On Apr 5, 2015 2:09 PM, Erik Huelsmann <ehuels@gmail.com> wrote:<br type='attribution'><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Mark,<div><br /><div class="elided-text">On Sun, Apr 5, 2015 at 11:13 AM, Mark Evenson <span dir="ltr"><<a href="mailto:evenson@panix.com">evenson@panix.com</a>></span> wrote:<br /><blockquote style="margin:0 0 0 0.8ex;border-left:1px #ccc solid;padding-left:1ex">On 4/4/15 18:28, Erik Huelsmann wrote:<br />
<br />
[…]<br />
<br />
The copy of the bug code you sent me got garbled as follows:<br />
<br />
(defun =sample2 (n)<br />
  (macrolet ((f (result x)<br />
                `(list 'more (lambda () (=f ,result ,x))))<br />
             (g (result x)<br />
                `(list 'more (lambda () (=g ,result ,x)))))<br />
    (labels ((=f (result x)<br />
               (if (zerop x)<br />
                 result<br />
                 (g (1+ result) (1- x))))<br />
             (=g (result x)<br />
               (f result x)))<br />
      (f 0 n))))<br />
<br />
<br />
I assume that one is supposed to remove all the #\= characters?<br />
<font color="#888888"><br /></font></blockquote><div><br /></div><div>It's exactly the code that was sent to me. I think the point is that the macrolet conceils the fact that the "=g" function is being called through the "g" macro and that ABCL incorrectly handles the situation as dead code.</div></div><br clear="all" /><div><br /></div><div>Regards,</div><div><br /></div>-- <br /><div><div dir="ltr">Bye,<div><br /></div><div>Erik.</div><div><br /></div><div><a href="http://efficito.com/">http://efficito.com</a> -- Hosted accounting and ERP.</div><div>Robust and Flexible. No vendor lock-in.</div></div></div>
</div></div>
</blockquote></div>