<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=""><div class="">With the rise of SSDs, Self might be able to get away with a ‘non-story’ about storage - i.e. objects are just persistent, all the time (maybe in vats) and the VM caches some of them in main memory for speed but you don’t need to worry about that.</div><div class=""><br class=""></div><div class="">Similar to the 'non-story' that C etc have about whether a pointer is to L1, L2, main memory, swapped out memory on disk etc. </div><div class=""><br class=""></div><div class="">How to manage the persistent objects then becomes a Self level thing. You could layer SQL, filesystems like access, snapshotting object graphs etc on top if you felt like it.</div><div class=""><br class=""></div><div class="">Russell</div><div class=""><br class=""></div><br class=""><div><blockquote type="cite" class=""><div class="">On 13 May 2016, at 12:27 AM, Stephen De Gabrielle <a href="mailto:spdegabrielle@gmail.com" class="">spdegabrielle@gmail.com</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=""><div style="line-height: 1.22em; margin: 0px 0px 1em;" class=""><br class="webkit-block-placeholder"></div><div dir="ltr" style="line-height: 1.22em;" class="">Hi, <div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class="">What *should* the 'storage story' be? <div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">I think it's a pain point for programmers and users*, with programmers jumping out to SQL or some other CRUD[2] and/or query language to do anything on storage, or using an ORM solution. (I seem to recall microsoft proposing the filesystem as a database at one point but I don't know how that turned out)</div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class="">I see the odd paper addressing it from the OS side, but I don't recall anything from the PL side of things. </div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class="">I'm also interested in how parallelism and concurrency could/should be dealt with in Self?</div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class="">stephen</div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class=""><div class="gmail_quote" style="line-height: 1.22em;"><div style="line-height: 1.22em;" class="">[*] I think the OLPC/sugar UI timeline approach to saving documents was a bold and interesting approach - though I don't know if it scales to the number of concurrent projects and documents you see in the workplace. (maybe I'm too much of a chicken to sacrifice my folder hierarchy)</div><div style="line-height: 1.22em;" class="">[2] Create, Read, Update, Delete<br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div dir="ltr" style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div dir="ltr" style="line-height: 1.22em;" class="">On Thu, 12 May 2016 at 13:22, David Ungar<span class="Apple-converted-space"> </span><a href="mailto:ungar@me.com" target="_blank" style="line-height: 1.22em;" class="">ungar@me.com</a><span class="Apple-converted-space"> </span>[self-interest] <<a href="mailto:self-interest@yahoogroups.com" target="_blank" style="line-height: 1.22em;" class="">self-interest@yahoogroups.com</a>> wrote:<br style="line-height: 1.22em;" class=""></div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; line-height: 1.22em; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid;"><u style="line-height: 1.22em;" class=""></u><div style="line-height: 1.22em; background-color: rgb(255, 255, 255);" class=""><span style="line-height: 1.22em;" class=""> </span><div style="line-height: 1.22em;" class=""><div style="line-height: 1.22em;" class=""><div style="line-height: 1.22em;" class=""><div style="line-height: 1.22em; margin: 0px 0px 1em;" class=""><br class="webkit-block-placeholder"></div><div style="line-height: 1.22em;" class="">Good point about storage. Maybe if the project had not been canceled. Or if I'd found other funding...<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">- David (from iPad, typos likely)</div><div style="line-height: 1.22em; margin: 0px 0px 1em;" class=""><br class="webkit-block-placeholder"></div></div></div></div></div><div style="line-height: 1.22em; background-color: rgb(255, 255, 255);" class=""><div style="line-height: 1.22em;" class=""><div style="line-height: 1.22em;" class=""><div style="line-height: 1.22em;" class=""><div style="line-height: 1.22em; margin: 0px 0px 1em;" class=""><br class="webkit-block-placeholder"></div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">On May 11, 2016, at 5:14 PM, Russell Allen<span class="Apple-converted-space"> </span><a href="mailto:mail@russell-allen.com" target="_blank" style="line-height: 1.22em;" class="">mail@russell-allen.com</a><span class="Apple-converted-space"> </span>[self-interest] <<a href="mailto:self-interest@yahoogroups.com" target="_blank" style="line-height: 1.22em;" class="">self-interest@yahoogroups.com</a>> wrote:<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><blockquote type="cite" style="margin: 0px 0px 0px 4px; line-height: 1.22em;" class=""><div style="line-height: 1.22em;" class=""><span style="line-height: 1.22em;" class=""> </span><div style="line-height: 1.22em;" class=""><div style="line-height: 1.22em; margin: 0px 0px 1em;" class=""><br class="webkit-block-placeholder"></div><div style="line-height: 1.22em;" class="">There’s Haskell joke that computation should be the evaluation of typed pure functions but that programming should be the destructive updating of mutable untyped character strings (i.e. ’source code’).</div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class="">The equivalent for OO and in particular prototype OO systems I think is the idea that computation is live communicating objects but programming is writing a static description of those objects at one point in time in some sort of descriptive language.</div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class="">Where Self gets it right is the immediacy of morphic built on the flexibility of the Self language and VM. Where it gets it wrong is I think the same as where Smalltalk-80 gets it wrong - it’s half-way to an Operating System but doesn’t take that last jump. What I mean is not so much that Self should have device drivers or be its own kernel but that Self doesn’t have a storage story (it uses the filesystem - someone else’s story) or a sharing story (any object can metastasise and destroy the whole organism)</div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class="">(This is ignoring the more technical limitations of the current version of Self, e.g. 32bit only, doesn’t take advantage of multiple cores etc)</div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class="">(The other place I get the feeling of not just using a system but living within it is the unix command line)</div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class="">So to make a JS system more ‘successful’ in the Self sense I’d look at Dan Ingalls’ Lively Kernel and its offshoots. The aim would be to get users to feel like they are building lego or interacting with a live system, and not writing an essay, a set of instructions to be obeyed or a architectural blueprint.</div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class="">Russell</div><br style="line-height: 1.22em;" class=""><div style="line-height: 1.22em;" class=""><blockquote type="cite" style="margin: 0px 0px 0px 4px; line-height: 1.22em;" class=""><div style="line-height: 1.22em;" class="">On 12 May 2016, at 8:03 AM, David Harris<span class="Apple-converted-space"> </span><a href="mailto:dpharris@telus.net" target="_blank" style="line-height: 1.22em;" class="">dpharris@telus.net</a><span class="Apple-converted-space"> </span>[self-interest] <<a href="mailto:self-interest@yahoogroups.com" target="_blank" style="line-height: 1.22em;" class="">self-interest@yahoogroups.com</a>> wrote:</div><div style="line-height: 1.22em;" class=""><div style="line-height: 1.22em; font-size: 13px; font-family: Arial, helvetica, clean, sans-serif; font-style: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;" class=""><div style="line-height: 1.22em;" class=""><div style="line-height: 1.22em; font-family: Georgia;" class=""><div dir="ltr" style="line-height: 1.22em;" class="">Success does not need to only be in terms of number of users.  Self is successful on many levels.  For example, it has influenced may projects including JIT compilers for other languages, and its UI has also influenced other systems.  <div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em;" class="">David</div><div style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></div></div><div class="gmail_extra" style="line-height: 1.22em;"><br style="line-height: 1.22em;" class=""><div class="gmail_quote" style="line-height: 1.22em;">On Wed, May 11, 2016 at 11:01 AM, Bystroushaak<span style="line-height: 1.22em;" class=""> </span><a href="mailto:bystrousak@kitakitsune.org" target="_blank" style="line-height: 1.22em;" class="">bystrousak@kitakitsune.org</a><span style="line-height: 1.22em;" class=""> </span>[self-interest]<span style="line-height: 1.22em;" class=""> </span><span dir="ltr" style="line-height: 1.22em;" class=""><<a href="mailto:self-interest@yahoogroups.com" target="_blank" style="line-height: 1.22em;" class="">self-interest@yahoogroups.com</a>></span><span style="line-height: 1.22em;" class=""> </span>wrote:<br style="line-height: 1.22em;" class=""><blockquote class="gmail_quote" style="margin: 0px 0px 0px 4px; line-height: 1.22em; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid;"> > What it doesn't have is a Self-oriented guide, how to tease out of JS<br style="line-height: 1.22em;" class=""> > the success of Self.<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">Uh eh. I do not intend to offend anyone, but how did you get the<br style="line-height: 1.22em;" class="">impression that Self is successful?<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">Don't get me wrong, I like Self and I am activelly trying to learn it,<br style="line-height: 1.22em;" class="">but as far as I know it is almost dead project with maybe 10 people in<br style="line-height: 1.22em;" class="">world actually still using it outside of academia.<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">Compared to JavaScript, it seems to me that it is totally un-successfull.<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">------------------------------------<br style="line-height: 1.22em;" class="">Posted by: Bystroushaak <<a href="mailto:bystrousak@kitakitsune.org" target="_blank" style="line-height: 1.22em;" class="">bystrousak@kitakitsune.org</a>><br style="line-height: 1.22em;" class="">------------------------------------<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">------------------------------------<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class="">Yahoo Groups Links<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""><*> To visit your group on the web, go to:<br style="line-height: 1.22em;" class="">   <span style="line-height: 1.22em;" class=""> </span><a href="http://groups.yahoo.com/group/self-interest/" rel="noreferrer" target="_blank" style="line-height: 1.22em;" class="">http://groups.yahoo.com/group/self-interest/</a><br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""><*> Your email settings:<br style="line-height: 1.22em;" class="">   <span class="Apple-converted-space"> </span>Individual Email | Traditional<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""><*> To change settings online go to:<br style="line-height: 1.22em;" class="">   <span style="line-height: 1.22em;" class=""> </span><a href="http://groups.yahoo.com/group/self-interest/join" rel="noreferrer" target="_blank" style="line-height: 1.22em;" class="">http://groups.yahoo.com/group/self-interest/join</a><br style="line-height: 1.22em;" class="">   <span class="Apple-converted-space"> </span>(Yahoo! ID required)<br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""><*> To change settings via email:<br style="line-height: 1.22em;" class="">   <span style="line-height: 1.22em;" class=""> </span><a href="mailto:self-interest-digest@yahoogroups.com" target="_blank" style="line-height: 1.22em;" class="">self-interest-digest@yahoogroups.com</a><br style="line-height: 1.22em;" class="">   <span style="line-height: 1.22em;" class=""> </span><a href="mailto:self-interest-fullfeatured@yahoogroups.com" target="_blank" style="line-height: 1.22em;" class="">self-interest-fullfeatured@yahoogroups.com</a><br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""><*> To unsubscribe from this group, send an email to:<br style="line-height: 1.22em;" class="">   <span style="line-height: 1.22em;" class=""> </span><a href="mailto:self-interest-unsubscribe@yahoogroups.com" target="_blank" style="line-height: 1.22em;" class="">self-interest-unsubscribe@yahoogroups.com</a><br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""><*> Your use of Yahoo Groups is subject to:<br style="line-height: 1.22em;" class="">   <span style="line-height: 1.22em;" class=""> </span><a href="https://info.yahoo.com/legal/us/yahoo/utos/terms/" rel="noreferrer" target="_blank" style="line-height: 1.22em;" class="">https://info.yahoo.com/legal/us/yahoo/utos/terms/</a><br style="line-height: 1.22em;" class=""><br style="line-height: 1.22em;" class=""></blockquote></div><br style="line-height: 1.22em;" class=""></div><div style="line-height: 1.22em; margin: 0px 0px 1em;" class=""><br style="line-height: 1.22em;" class=""></div></div><div style="line-height: 1.22em; color: rgb(255, 255, 255); min-height: 0px;" class=""></div></div></div></div></blockquote></div><br style="line-height: 1.22em;" class=""><div style="line-height: 1.22em; margin: 0px 0px 1em;" class=""><br class="webkit-block-placeholder"></div></div></div></blockquote><div style="line-height: 1.22em; margin: 0px 0px 1em;" class=""><br class="webkit-block-placeholder"></div></div></div></div></div><div style="line-height: 1.22em; background-color: rgb(255, 255, 255);" class=""><div style="line-height: 1.22em;" class=""><div style="line-height: 1.22em;" class=""><div style="line-height: 1.22em;" class=""><div style="line-height: 1.22em; margin: 0px 0px 1em;" class=""><br class="webkit-block-placeholder"></div></div><div style="line-height: 1.22em; color: rgb(255, 255, 255); min-height: 0px;" class=""></div></div></div></div></blockquote></div></div></div></div><div style="line-height: 1.22em; margin: 0px 0px 1em;" class=""><br class="webkit-block-placeholder"></div></div><div style="line-height: 1.22em; color: rgb(255, 255, 255); height: 0px;" class=""></div></div></blockquote></div><br class=""></body></html>