<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">James,<div class=""><br class=""></div><div class="">Thanks for chiming in. I started reading your paper and love that you reference Alan Borning’s work. Cannot finish the paper right now, but will look forward to that.</div><div class=""><br class=""></div><div class="">Yes, there are many ways. I don’t know of a single best way. Lately, I’ve been programming in Swift, and have allowed it to teach me something new, as well as rekindle my friendship with APL. There’s (IMO) an interesting question around objects and functional programming, and I don’t know yet if any language has unified the two to my satisfaction. I have not been doing enough scholarship. I suspect the Grace model helps, but I really need to learn more.</div><div class=""><br class=""></div><div class="">Is subclassing/inheritance the same as invoking a closure? Is a closure “just” an object with a single method? Old questions...</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">- David</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Jun 25, 2016, at 3:17 AM, James Noble <a href="mailto:kjx@mcs.vuw.ac.nz" class="">kjx@mcs.vuw.ac.nz</a> [self-interest] <<a href="mailto:self-interest@yahoogroups.com" class="">self-interest@yahoogroups.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div id="ygrp-mlmsg" style="font-size: 13px; font-family: Arial, helvetica, clean, sans-serif; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); position: relative;" class=""><div id="ygrp-msg" style="line-height: 1.22em; z-index: 1;" class=""><div id="ygrp-text" style="line-height: 1.22em; font-family: Georgia;" class=""><p style="line-height: 1.22em; margin: 0px 0px 1em;" class="">> So we have prototypes (self & JavaScript) and classes (sometimes added to JavaScript).<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">JavaScript prototypes are very different from Self prototypes.<span class="Apple-converted-space"> </span><br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">> Is there another way?<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">Yep. Object constructors from Emerald (like Javascripts' { } notation for objects)<br style="line-height: 1.22em;" class="">and concatenation rather than delegation or inheritance.<span class="Apple-converted-space"> </span><br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">see e.g.<span class="Apple-converted-space"> </span><a href="http://lively.cs.tut.fi/publications/TR6-JavaScriptConcatenation-Taivalsaari.pdf" style="line-height: 1.22em; font-family: Verdana;" class="">http://lively.cs.tut.fi/publications/TR6-JavaScriptConcatenation-Taivalsaari.pdf</a><br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">or more generally<span class="Apple-converted-space"> </span><a href="http://www.cs.tut.fi/~taivalsa/publications.html" style="line-height: 1.22em; font-family: Verdana;" class="">http://www.cs.tut.fi/~taivalsa/publications.html</a><br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">or more recently "Object Inheritance Without Classes" - Tim Jones et al<br style="line-height: 1.22em;" class=""><a href="http://homepages.ecs.vuw.ac.nz/~tim/publications/ecoop16-object-inheritance.pdf" style="line-height: 1.22em; font-family: Verdana;" class="">http://homepages.ecs.vuw.ac.nz/~tim/publications/ecoop16-object-inheritance.pdf</a><br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">James<span class="Apple-converted-space"> </span></p></div><div style="line-height: 1.22em; color: rgb(255, 255, 255); height: 0px;" class=""></div></div></blockquote></div><br class=""></div></body></html>