execute or evaluate?
On 17 August 2011 23:17, Stéphane Ducasse <[email protected]> wrote: > I wrote > > > cull: anArg > "Execute the receiver with one or zero argument. > > [ 1 + 2 ] cull: 5 > returns 3 > [ :x | 1+ 2 + x] cull: 5 > returns 8 > " > ^numArgs = 0 > ifTrue: [self value] > ifFalse: [self value: anArg] > > > > cull: firstArg cull: secondArg > "Execute the receiver with two or less arguments. > > [ 1 + 2 ] cull: 5 cull: 6 > returns 3 > [ :x | 1+ 2 + x] cull: 5 > returns 8 > [ :x | 1+ 2 + x] cull: 5 cull: 3 > returns 8 > [ :x : y | 1+ y + x] cull: 5 cull: 2 > returns 8 > " > ^numArgs < 2 > ifTrue: [self cull: firstArg] > ifFalse: [self value: firstArg value: secondArg] > > > cull: firstArg cull: secondArg cull: thirdArg > "Execute the receiver with three or less arguments. Check cull:cull: > for examples" > > ^numArgs < 3 > ifTrue: [self cull: firstArg cull: secondArg] > ifFalse: [self value: firstArg value: secondArg value: > thirdArg] > > > cull: firstArg cull: secondArg cull: thirdArg cull: fourthArg > "Execute the receiver with four or less arguments. Check cull:cull: > for examples" > ^numArgs < 4 > ifTrue: [self cull: firstArg cull: secondArg cull: thirdArg] > ifFalse: [self value: firstArg value: secondArg value: > thirdArg value: fourthArg] > > Will add a bug entry > > Stef > -- Best regards, Igor Stasenko AKA sig.
