'From Cuis 1.0 of 28 November 2009 [latest update: #337] on 3 January 2010 at 10:19:57 pm'!

!BlockClosure commentStamp: 'jmv 1/3/2010 22:19' prior: 0!
I am a block closure for Eliot's closure implementation. Not to be confused with the old BlockClosure (they were never part of Cuis anyway).

This is a closure converted image. With full closure support, you can finally use recursive blocks like here:

| fac |
	fac := [:n| n > 1 ifTrue:[n * (fac value: n-1)] ifFalse:[1]].
	fac value: 5. "120"

and close over temps correctly, such as here:

	(1 to: 10) do:[:i| WorldState addDeferredUIMessage:[Transcript cr; show: i]].

Another good example:

| fib |
fib := [:n| n < 2 ifTrue:[1] ifFalse:[(fib value:n-1) + (fib value:n-2)]].
fib value: 10. "89"!

