You could add an extra parameter that is another block. Use that parameter
as the value of carre in the block. something like:

f := [:a :ff | a ifTrue: [ff (a not) ff] ]
ff: = [:a :ff | a ifTrue: [ff (a not) ff] ]

On Jan 22, 2008 9:10 PM, Hilaire Fernandes <[EMAIL PROTECTED]> wrote:

> I got an error "Attempt to evaluate a block that is already being
> evaluated", when I call in recursion a block like
>
> carre := [:s1 :s2 :s3 :s4 :n |
>        n >0 ifTrue:
>                [carre valueWithArguments:  {(segment value: s1 value: s2).
>                         (segment value: s2 value: s3).
>                         (segment value: s3 value: s4).
>                         (segment value: s1 value: s4).
>                         n-1}]]
>
> Hilaire
>
> _______________________________________________
> Beginners mailing list
> Beginners@lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/beginners
>
_______________________________________________
Beginners mailing list
Beginners@lists.squeakfoundation.org
http://lists.squeakfoundation.org/mailman/listinfo/beginners

Reply via email to