<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-size:small"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Feb 19, 2022 at 9:29 AM Jörg Belger <<a href="mailto:unique75@web.de">unique75@web.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Ahh thank you… I looked only in the 5.3 image coz I want currently to use only a stable image for my things :-)<br>
Seems Eliot tries to implement every nice things from the VisualWorks VM :-)<br></blockquote><div><br></div><div class="gmail_default" style="font-size:small">In fact Clément Béra implemented it based on my VisualWorks design when we were working on Sista together.  Clément deserves most of the credit.</div><div class="gmail_default" style="font-size:small"></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<br>
> Am 19.02.2022 um 16:32 schrieb David T. Lewis <<a href="mailto:lewis@mail.msen.com" target="_blank">lewis@mail.msen.com</a>>:<br>
> <br>
> On Sat, Feb 19, 2022 at 02:27:48PM +0100, J??rg Belger wrote:<br>
>> <br>
>>> Am 19.02.2022 um 14:14 schrieb Nicolas Cellier <<a href="mailto:nicolas.cellier.aka.nice@gmail.com" target="_blank">nicolas.cellier.aka.nice@gmail.com</a>>:<br>
>>> <br>
>>> For immutability, please see #beReadOnlyObject.<br>
>>> <br>
>> <br>
>> I cannot find the #beReadOnlyObject with MethodFinder in 5.3 or in class Object<br>
>> <br>
> <br>
> Eliot added this last March, so it is in the trunk image now but was<br>
> not present in the 5.3 release image.<br>
> <br>
> A new 6.0 release is expected some time in the next month or so, but<br>
> in the mean time you can find #beReadOnlyObject in the current trunk<br>
> image (the download link is at <a href="https://squeak.org/downloads/" rel="noreferrer" target="_blank">https://squeak.org/downloads/</a>), or you<br>
> can update an existing 5.3 image (preferences browser, category "updates",<br>
> change the Update URL to <a href="http://source.squeak.org/trunk" rel="noreferrer" target="_blank">http://source.squeak.org/trunk</a>, then Update<br>
> Squeak from the mouse menu at upper left).<br>
> <br>
> Here the the commit notices from the trunk update stream:<br>
> <br>
> -------<br>
> Name: Kernel-eem.1317<br>
> Author: eem<br>
> Time: 11 March 2020, 1:12:02.344414 pm<br>
> UUID: 3755843a-380e-4cbc-a498-b1f1a85f2906<br>
> Ancestors: Kernel-eem.1316<br>
> <br>
> Add the core of read-only support, which will provide both for read-only literals and for efficient write-through cacheing to object databases such as gemstone.<br>
> <br>
> This implementation differs slightly from Clément Béra's original implementatin for Pharo in that here ModificationForbidden always uses a mirror (either a Context or a Class) to attempt to modify the read-only<br>
> object in retryModification.<br>
> <br>
> -------<br>
> Name: Kernel-eem.1318<br>
> Author: eem<br>
> Time: 11 March 2020, 6:49:23.875063 pm<br>
> UUID: 25265ede-0f88-439d-8800-8a39e3f1898a<br>
> Ancestors: Kernel-eem.1317<br>
> <br>
> Read-only object support.<br>
> <br>
> Have ModificationForbidden allow retrying modification without resuming (retryModificationNoResume) or resuming (retryModificatio).  Ideally this would just be retryModification and resume but Pharo got there first and compatibility is a virtue.<br>
> <br>
> Add BinaryModificationForbidden to support Array and the elementsExchangeIdentityWith: become machinery, and simplify the Behavior adoptInstance: mchinery.  Decouople resumeValue from newValue to allow Array and the elementsExchangeIdentityWith: become machinery to answer the correct result.<br>
> <br>
> Extend the execution simulation machionery to correctly simulate attempting to assign the inst vars of read-only objects.<br>
> <br>
> Add Object class>>releaseNotes as a scratch pad for people to add things that should appear in the release notes.<br>
> <br>
> -------<br>
> <br>
<br>
<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div></div>