[squeak-dev] The Inbox: ST80-ct.256.mcz

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Sat Jun 13 12:24:17 UTC 2020


Hi Subbu,
the or:/and:
are inlined, so there is no block activated, just conditional jump byte
codes like ifTrue:/ifFalse:
| and & cost a message send. It would be interesting to study how sista
inlining deals with it...

Le sam. 13 juin 2020 à 13:58, K K Subbu <kksubbu.ml at gmail.com> a écrit :

> On 12/06/20 11:18 pm, Thiede, Christoph wrote:
> > Marcel explicitly asked for duplicating these lines. However, one
> > single condition would not be bad either, but why would you use #|
> > instead of #or: here? Is this just in order to save one pair of
> > brackets? ;-)
>
> It is an simple boolean expression that can be evaluated in a single
> sequence of bytecodes.
>
> If the first part of the or: is false, then a block has to be activated
> and evaluated for the result. If the block involves significant
> computation then the overhead may not matter much. For simple
> expressions, it is an overkill.
>
> Regards .. Subbu
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20200613/389f9700/attachment.html>


More information about the Squeak-dev mailing list