5 ms·
And then we find out that Smalltalk implementations might choose to optimize instead of allowing anything to change at any time. ifFalse: alternativeBlock
by igouy 1y ago
And then we find out that Smalltalk implementations might choose to optimize instead of allowing anything to change at any time.
ifFalse: alternativeBlock
"Answer the value of alternativeBlock. Execution does not actually
reach here because the expression is compiled in-line."
^alternativeBlock value
- pjmlp 1y agoOne tree doesn't make a forest, from whatever implementation that was taken out of, and naturally there are always magician tricks that PyPy also uses.
- igouy 1y ago*iirc* pretty much all of the Smalltalks (that was CUIS). ~ "Creating blocks in Smalltalk has always been a potential source of performance problems. … In Resilient, we have restricted blocks to be last in-first-out (LIFO)…" https://blog.bracha.org/resilient-paper.pdf https://blog.bracha.org/resilient-paper.pdf ~ "Digitalk’s Team/V unobtrusively introduced a non-reflective syntax…" https://wirfs-brock.com/allen/posts/914 https://wirfs-brock.com/allen/posts/914