[Cuis-dev] unnecessary punctuation

Juan Vuletich juan at cuis.st
Fri Jun 14 08:30:53 PDT 2024


On 6/14/2024 12:11 PM, Boris Shingarov via Cuis-dev wrote:
>> Interesting - I've never realized the difference :) So if I understand
>> correctly the #ifTrue:ifFalse message gets inlined only when used with block
>> arguments
> Wait... didn't we get rid of it about a year ago, in order to avoid
> duplicating Pharo's complexity around "deoptimization"?
>
> Let me check:
>
> DUCK>>  ifTrue: a ifFalse: b
>    ^'Excellent!'
>
> Then, in Pharo:
>
>    DUCK new ifTrue: [1] ifFalse: [2]  → 'Excellent!'
>
> In Cuis today:
>
>    DUCK new ifTrue: [1] ifFalse: [2]  → NonBooleanReceiver
>
>
> Sigh.
> I was kinda hoping we were close to porting MA to Cuis.
> But if we can't send ifTrue:ifFalse: to non-1854 Booleans, such as
> unsaturated expressions, then we can't execute Smalltalk symbolically
> which means we can't do anything.

Just do

MessageNode enableNonBooleanReceiversOfBooleanMessages

Small price to pay...

-- 
Juan Vuletich
cuis.st
github.com/jvuletich
researchgate.net/profile/Juan-Vuletich
independent.academia.edu/JuanVuletich
patents.justia.com/inventor/juan-manuel-vuletich
linkedin.com/in/juan-vuletich-75611b3
twitter.com/JuanVuletich



More information about the Cuis-dev mailing list