logo       

Re: problems with scoping: msg#00131

lang.smalltalk.squeak.beginners

Subject: Re: problems with scoping

Ch Lamprecht a écrit :
> Hi,
> I face a problem with variable scoping in block-closures:
>
> arr := Array withAll: #(1 2 3 4 5 ).
> blocks := arr collect: [ :i | [Transcript show: i] ].
> blocks do:[:item | item value].
>
> This prints 55555 because blocks contains
> [Transcript show: i]
> for all of its elements and accesses the current value of i.
>
> I would like to have blocks contain
> [Transcript show: 1]
> [Transcript show: 2]
> [Transcript show: 3]
> etc.
>
> so it would print 12345
>
> TIA Christoph
>

You can read this to understand:
http://lists.squeakfoundation.org/pipermail/squeak-dev/2006-October/109809.html

Math


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise