<div dir="ltr">Hi Dave,<div> do you have some links to "Steimann's ideas"? I'm interesting of getting rid of nil. That is something I've been thinking for a long time (since 2005) and I'd like to see what other people think about it.</div><div><br></div><div>Thanks!</div><div>Hernan.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Dec 23, 2021 at 12:48 PM David Ungar <<a href="mailto:ungar@mac.com">ungar@mac.com</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">Yes, after swimming in Swift, I agree. Immutable slots, set at creation time, are worth the additional language complexity. <br>
(If/when I ever get back to playing with languages, though, I think that Korz holds the most promise.)<br>
in Self-like terms, maybe a copy primitive that rips out selected assignment slots?<br>
Or a special nil that can only be overwritten once?<br>
Hmm... I'd want to pull in some of Steimann's ideas, he gets rid of nil by unifying across counts.<br>
<br>
Maybe after I retire...<br>
<br>
<br>
- Dave<br>
<br>
> On Dec 23, 2021, at 1:09 AM, kjx <<a href="mailto:kjx@ecs.vuw.ac.nz" target="_blank">kjx@ecs.vuw.ac.nz</a>> wrote:<br>
> <br>
> for what it's worth, I now thing this is one of the inherent weaknesses<br>
> of the Self model - not just for arguments, but even for any constant slot:<br>
> there's no good way to make "per-instance" constant slots.<br>
> <br>
> Consider points - Self points are logically immutable, <br>
> but they have to be declared with mutable slots. <br>
> <br>
> This is why Grace ended up going with Emerald style object creation expressions<br>
> (which are pretty much anonymous classes) rather than cloning prototypes.<br>
> <br>
> I guess you could have slots with semantics where<br>
> - cloning the object automatically uninitialises them in the clone,<br>
> - once assigned/initialised they cannot be re-initialised.<br>
> <br>
> Hmm.<br>
> <br>
> Merry Christmas / Happy Holidays / God Yul / Happy New Year / etc everyone - James<br>
> <br>
>> On 17/12/2021, at 6:54AM, Jecel Assumpcao Jr <<a href="mailto:jecel@merlintec.com" target="_blank">jecel@merlintec.com</a>> wrote:<br>
>> <br>
>> I noticed that I did not actually ever change a parent after I had<br>
>> cloned an object. Perhaps that use case would be better expressed as<br>
>> setting a value of an argument once and for all, like in theory :self*<br>
>> is set when the activation is created?<br>
> <br>
> _______________________________________________<br>
> Self-interest mailing list<br>
> <a href="mailto:Self-interest@lists.selflanguage.org" target="_blank">Self-interest@lists.selflanguage.org</a><br>
> <a href="http://lists.selflanguage.org/mailman/listinfo/self-interest" rel="noreferrer" target="_blank">http://lists.selflanguage.org/mailman/listinfo/self-interest</a><br>
<br>
_______________________________________________<br>
Self-interest mailing list<br>
<a href="mailto:Self-interest@lists.selflanguage.org" target="_blank">Self-interest@lists.selflanguage.org</a><br>
<a href="http://lists.selflanguage.org/mailman/listinfo/self-interest" rel="noreferrer" target="_blank">http://lists.selflanguage.org/mailman/listinfo/self-interest</a><br>
</blockquote></div>