<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="">Hey Bystroushaak,<div class=""><br class=""><div class="">Actually I think your criticisms here are pretty good.</div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On 27 Jun 2016, at 2:48 AM, Bystroushaak <a href="mailto:bystrousak@kitakitsune.org" class="">bystrousak@kitakitsune.org</a> [self-interest] <<a href="mailto:self-interest@yahoogroups.com" class="">self-interest@yahoogroups.com</a>> wrote:</div><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="">1. Missing cascading operator.<br style="line-height: 1.22em;" class=""></p></div></div></div></div></blockquote><div>This is definitely an annoying niggle for me. It’s something I’d like to see in Self but would require delving into the VM to fix it, or redoing the parser in Self, either of which is an effort out of proportion to the problem at the moment :)</div><div><br class=""></div><div>As an aside, I would implement it the way Tim Budd’s Little Smalltalk did, not Smalltalk-80’s cascade which I find broken. i.e.</div><div><br class=""></div><div><font face="Courier" class="">a b: c D: e; f: g     =    (a b: c D: e) f: g</font></div><div><br class=""></div><div>not</div><div><br class=""></div><div><font face="Courier" class="">a b: c D: e; f: g     =    a b: c D: e. a f: g</font></div><br class=""><blockquote type="cite" class=""><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="">2. No „VM checkpoints“<br style="line-height: 1.22em;" class=""></p></div></div></div></div></blockquote><div>I’d add one more way of doing this: make the snapshot format an actual database (Sqlite’s the easiest) holding multiple checkpoints. This also gives us some nice storage ideas for objects we want to be persistent but which don’t need to be in memory all the time (like my MP3 collection)</div><br class=""><blockquote type="cite" class=""><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="">3. Mouse oriented environment<br style="line-height: 1.22em;" class=""></p></div></div></div></div></blockquote><div>I don’t mind this so much but making key bindings for the common outliner operations shouldn’t be too hard. The immediate problem I would think is the you would have to introduce the idea of which outliner is ‘in focus’ for the keyboard.</div><div><br class=""></div><blockquote type="cite" class=""><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="">4. Inheritance and outliners</p></div></div></div></div></blockquote></div></div><div>Assuming you’re in a recently built image, open a shell and do this:</div><div><br class=""></div><div><font face="Courier" class="">preferences outliner kevooidal: true</font></div><div><br class=""></div><div>:)</div><div><br class=""></div><div>(This code is old, but putting a helper method in preferences outliner is new)</div><div><br class=""></div><div>Russell</div><div><br class=""></div><div><br class=""></div></div></body></html>