On Mon, Oct 17, 2011 at 10:40 PM, Stéphane Ducasse < [email protected]> wrote:
> > Just to hammer home the message. The below, which won't be inlined since > the block argument is in a variable, > > Elliot what is hammer home? > http://idioms.thefreedictionary.com/hammer+home > To get in my skull? > > I should reread the thread without my flu and it will go better :) > > > | b | > > b := [:i| nil]. > > 1 to: 10 do: b > > > > of course answers 1, since > > > > Number methods for intervals > > to: stop do: aBlock > > "Normally compiled in-line, and therefore not overridable. > > Evaluate aBlock for each element of the interval (self to: stop by: > 1)." > > | nextValue | > > nextValue := self. > > [nextValue <= stop] > > whileTrue: > > [aBlock value: nextValue. > > nextValue := nextValue + 1] > > > > which ends with an implicit ^self. > > I should rereade the code thinkking about that hidden self it did not occur > to me that I should > think about it. > > Stef > > > -- Mariano http://marianopeck.wordpress.com
