You could add an extra parameter that is another block. Use that parameter as the value of carre in the block. something like:<br><br>f := [:a :ff | a ifTrue: [ff (a not) ff] ] <br>ff: = [:a :ff | a ifTrue: [ff (a not) ff] ]
<br><br><div class="gmail_quote">On Jan 22, 2008 9:10 PM, Hilaire Fernandes &lt;<a href="mailto:hilaire@ofset.org">hilaire@ofset.org</a>&gt; wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I got an error &quot;Attempt to evaluate a block that is already being<br>evaluated&quot;, when I call in recursion a block like<br><br>carre := [:s1 :s2 :s3 :s4 :n |<br> &nbsp; &nbsp; &nbsp; &nbsp;n &gt;0 ifTrue:<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;[carre valueWithArguments: &nbsp;{(segment value: s1 value: s2).
<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; (segment value: s2 value: s3).<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; (segment value: s3 value: s4).<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; (segment value: s1 value: s4).<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; n-1}]]<br><br>Hilaire
<br><br>_______________________________________________<br>Beginners mailing list<br><a href="mailto:Beginners@lists.squeakfoundation.org">Beginners@lists.squeakfoundation.org</a><br><a href="http://lists.squeakfoundation.org/mailman/listinfo/beginners" target="_blank">
http://lists.squeakfoundation.org/mailman/listinfo/beginners</a><br></blockquote></div><br>