<div dir="ltr">Remember we have the package to make objects inmutable if you want.<div><br></div><div>Hernan.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, May 6, 2020 at 11:22 AM Juan Vuletich via Cuis-dev <<a href="mailto:cuis-dev@lists.cuis.st">cuis-dev@lists.cuis.st</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 5/1/2020 12:53 PM, Nicolas Cellier via Cuis-dev wrote:<br>
> For myself, I find the { } syntax very short and useful. I use it a <br>
> lot even if it reduces a bit portability.<br>
> Also note that the construct is supported by dedicated byteCodes.<br>
><br>
> I like the Float64Array extension #[ 1.0 3.5 ], maybe it should be <br>
> generalized in Squeak/Pharo.<br>
<br>
Yes!<br>
<br>
> But we should also optimize the class with same set as primitives as <br>
> FloatArray, which is IMO even more useful.<br>
<br>
I agree that having the FloatArrays primitives would be great. <br>
Especially #floatAt: and #floatAt:put:, the simplest ones.<br>
<br>
> Note the alternative to backticks that can be used in Squeak: ^[ 0@0 ] <br>
> once.<br>
> It does not require a new syntax, just an elegant trick.<br>
> But it costs 3 message send and 2 Dictionary lookup at runtime though...<br>
> With pre-existing Dolphin ##( 0@0 ) we now have at least 2 syntaxes <br>
> and 3 ways to achieve the same effect in Smalltalk, which is not ideal...<br>
><br>
> I would vote for immutability of all literals including backticks. <br>
> That's the least surprising.<br>
> Otherwise, if you mutate the literal, then the code shows a non <br>
> corresponding value, which is misleading.<br>
<br>
I completely agree. Do you know what is the status of immutability in <br>
Squeak and Pharo? Wasn't the VM work done by Clement a few years ago?<br>
<br>
> The first time I was bitten with this was in st80 in the late eighties...<br>
> I discovered that I could write (WriteStream on: 'some literal') which <br>
> was much shorter than (WriteStream on String new; nextPutAll: 'same <br>
> literal'; yourself).<br>
> But WriteStream did use a become: under the hood when writing past the <br>
> destination size, and as a newbie, it tooks me some time to understand <br>
> why my nicer code would not give the expected result twice :)<br>
><br>
<br>
Yes... Immutable literals would be great.<br>
<br>
Thanks,<br>
<br>
-- <br>
Juan Vuletich<br>
<a href="http://www.cuis-smalltalk.org" rel="noreferrer" target="_blank">www.cuis-smalltalk.org</a><br>
<a href="https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev" rel="noreferrer" target="_blank">https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev</a><br>
<a href="https://github.com/jvuletich" rel="noreferrer" target="_blank">https://github.com/jvuletich</a><br>
<a href="https://www.linkedin.com/in/juan-vuletich-75611b3" rel="noreferrer" target="_blank">https://www.linkedin.com/in/juan-vuletich-75611b3</a><br>
@JuanVuletich<br>
<br>
-- <br>
Cuis-dev mailing list<br>
<a href="mailto:Cuis-dev@lists.cuis.st" target="_blank">Cuis-dev@lists.cuis.st</a><br>
<a href="https://lists.cuis.st/mailman/listinfo/cuis-dev" rel="noreferrer" target="_blank">https://lists.cuis.st/mailman/listinfo/cuis-dev</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><span style="font-family:tahoma,sans-serif;font-size:xx-small;border-collapse:collapse"><strong><span style="font-size:8pt"><span><span style="font-size:small"><font size="2"><span style="font-weight:normal"><span style="font-weight:bold">Hernán Wilkinson</span><br>Agile Software Development, Teaching & Coaching</span></font></span></span></span></strong></span></div><div><span style="font-family:tahoma,sans-serif;font-size:xx-small;border-collapse:collapse"><strong><span style="font-size:8pt"><span><span style="font-size:small"><font size="2"><span style="font-weight:normal">Phone: +54-011</span></font></span></span></span></strong></span><font face="tahoma, sans-serif" size="2">-4893-2057</font></div><div><strong style="font-family:tahoma,sans-serif;font-size:xx-small"><span style="font-size:8pt"><span style="font-size:small"><font size="2"><span style="font-weight:normal">Twitter: @HernanWilkinson</span></font></span></span></strong></div><div><span style="font-family:tahoma,sans-serif;font-size:xx-small;border-collapse:collapse"><strong><span style="font-size:8pt"><span><span style="font-size:small"><font size="2"><span style="font-weight:normal">site: <a href="http://www.10pines.com/" style="color:rgb(17,65,112)" target="_blank">http://www.10Pines.com</a></span></font></span></span></span></strong></span></div><div><font face="tahoma, sans-serif"><span style="border-collapse:collapse">Address: Alem 896</span></font>, Floor 6, Buenos Aires, Argentina</div></div></div></div></div></div></div></div></div></div></div></div>