Hi,

I haven't run your code, but I guess that the validation of the number of
arguments of the block is failing.
The block [ 42 ] is a block with zero arguments, but when you do a value:
20, you are calling it with one argument. So it fails.

Happy Coding!

Santiago Dandois


El dom., 5 ene. 2020 a las 13:08, xap (<x...@router.33mail.com>) escribió:

> hi, I'm starting out w/ pharo (as my first smalltalk-ish language). am on
> Windows 7 professional; downloaded 64-bit, pharo 8 64-bit development; then
> downgraded to pharo 7, 32-bit stable.
> I went through Prof Stef, and find 1 place of unexpected behavior:
>
> Prof Stef/Conditionals:
>
> "no surprises, prints 100"
> 1 < 2
>   ifTrue: [100]
>   ifFalse: [42].
>
> "i added a, as below, and get an error -- i would've expected a to refer to
> the block, and to be evaluable later, similar to the just prior example in
> ProfStef/Block assignation"
>
> |a|
> a := 1 < 2
>   ifTrue: [:x|x+1]
>   ifFalse: [42].
> a value: 20.
>
> What am I missing, pls?
>
>
>
>
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html
>
>

Reply via email to