<div dir="ltr"><br><br><div class="gmail_quote">On Wed, Jul 30, 2008 at 2:23 AM, Paolo Bonzini <span dir="ltr">&lt;<a href="mailto:bonzini@gnu.org">bonzini@gnu.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Eliot Miranda wrote:<div class="Ih2E3d"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<br>
On Tue, Jul 29, 2008 at 9:21 AM, stephane ducasse &lt;<a href="mailto:stephane.ducasse@free.fr" target="_blank">stephane.ducasse@free.fr</a> &lt;mailto:<a href="mailto:stephane.ducasse@free.fr" target="_blank">stephane.ducasse@free.fr</a>&gt;&gt; wrote:<br>

<br>
 &nbsp; &nbsp;Hello<br>
<br>
 &nbsp; &nbsp;I&#39;m reading newspeak spec and I like the idea of immutable strings.<br>
 &nbsp; &nbsp;Now what does it really bring to us?<br>
</blockquote>
<br></div>
Eliot, I read your answer and (like Colin probably) I didn&#39;t understand if you were speaking about immutable objects in Smalltalk, or of immutable strings (as in Java, where you have immutable java.lang.String objects and use java.lang.StringBuffer to obtain a restricted kind of mutability).</blockquote>
<div><br></div><div>So java strings are not really immutable but they don&#39;t provide a mutability API?</div><div>&nbsp;</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
What family does newspeak fall in?</blockquote><div><br></div><div>Its own :) &nbsp;Gilad will be pushing this area beyond what Smalltalk offers. &nbsp;For example one idea is for the class of literals to be determined at run-time depending on the instantiation of the module they&#39;re in. &nbsp;So &#39;foo&#39; in a module Mx would, in an instantiation of Mx be an instance of ByteString if the the instantiation imported ByteString as the literal string class, and e.g. UTF8String in an instantiation that imported UTF8String as the literal string class. &nbsp;Obviously language semantics like this requires some additional behind-the-scenes machinery.</div>
<div><br></div><div>I think I&#39;m correct in saying that currently Newspeak is intending to use Smalltalk-style immutable objects with per-object immutability enforced by inst var assignment checks and the mutating primitives. &nbsp;But this will be extended to a notion of deep immutability where a sub-graph of objects rooted at some immutable object will all be immutable. &nbsp;This is to support better actor-style concurrency. &nbsp;But don&#39;t take it form me. &nbsp;Post a question on Gilad&#39;s blog, or google <a href="http://gbracha.blogspot.com">gbracha.blogspot.com</a> for Immutability.</div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br><font color="#888888">
<br>
Paolo<br>
<br>
</font></blockquote></div><br></div>