<html><head></head><body><div style="color:#000; background-color:#fff; font-family:Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:13px"><div dir="ltr" id="yui_3_16_0_ym19_1_1481657653721_3148"><span style="font-family: 'Courier New'; white-space: pre-wrap;" id="yui_3_16_0_ym19_1_1481657653721_3343">See responses inline below..</span><br></div><div dir="ltr" id="yui_3_16_0_ym19_1_1481657653721_3148"><br></div><div dir="ltr" id="yui_3_16_0_ym19_1_1481657653721_3148"><span style="font-family: 'Courier New'; white-space: pre-wrap;">------</span></div><div dir="ltr" id="yui_3_16_0_ym19_1_1481657653721_3148"><br></div><div dir="ltr" id="yui_3_16_0_ym19_1_1481657653721_3184"><b style="font-family: -webkit-standard;" id="yui_3_16_0_ym19_1_1481657653721_3091"><span style="font-family: 'Courier New'; white-space: pre-wrap; font-weight: 400;" id="yui_3_16_0_ym19_1_1481657653721_3178">></span><i style="font-family: 'Courier New'; white-space: pre-wrap; font-weight: 400;" id="yui_3_16_0_ym19_1_1481657653721_3179"> </i>Lars</b><span style="font-family: -webkit-standard; font-size: medium;" id="yui_3_16_0_ym19_1_1481657653721_3092"> </span><a href="mailto:oberon%40lists.inf.ethz.ch?Subject=Re:%20Re%3A%20%5BOberon%5D%20Safe%20module%20unloading&In-Reply-To=%3Cf220d0a03d55b9506ec6259466dfe3db.squirrel%40gator3286.hostgator.com%3E" title="[Oberon] Safe module unloading" style="font-family: -webkit-standard; background-color: rgb(255, 255, 255);" id="yui_3_16_0_ym19_1_1481657653721_3093">noreply at z505.com </a><br style="font-family: -webkit-standard;" id="yui_3_16_0_ym19_1_1481657653721_3094"></div><div dir="ltr" id="yui_3_16_0_ym19_1_1481657653721_3187"><i style="font-family: -webkit-standard;" id="yui_3_16_0_ym19_1_1481657653721_3095"><span style="font-family: 'Courier New'; white-space: pre-wrap;" id="yui_3_16_0_ym19_1_1481657653721_3185">></span><i style="font-family: 'Courier New'; white-space: pre-wrap;" id="yui_3_16_0_ym19_1_1481657653721_3186"> </i>Tue Dec 13 13:51:23 CET 2016</i></div><div dir="ltr" id="yui_3_16_0_ym19_1_1481657653721_3187"><i style="font-family: -webkit-standard;"><br></i></div><pre id="yui_3_16_0_ym19_1_1481657653721_3110">><i id="yui_3_16_0_ym19_1_1481657653721_3201"> </i>><i id="yui_3_16_0_ym19_1_1481657653721_3111"> Complete source code (modules Kernel, Modules):
</i>><i id="yui_3_16_0_ym19_1_1481657653721_3204"> </i>><i id="yui_3_16_0_ym19_1_1481657653721_3112"> <a href="http://github.com/andreaspirklbauer/Oberon-experimental" id="yui_3_16_0_ym19_1_1481657653721_3113">http://github.com/andreaspirklbauer/Oberon-experimental</a>
</i>><i id="yui_3_16_0_ym19_1_1481657653721_3206"> </i>><i id="yui_3_16_0_ym19_1_1481657653721_3114">
</i></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110">><i id="yui_3_16_0_ym19_1_1481657653721_3208"> </i>Hey I saw that you have some movies/videos of oberon, in "mov" file
><i id="yui_3_16_0_ym19_1_1481657653721_3210"> </i>format.. might be useful to upload them to youtube and link to them as
><i id="yui_3_16_0_ym19_1_1481657653721_3212"> </i>when I click the mov file it does not play the video</pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110">The videos can/will be uploaded to Youtube.</pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110">><i id="yui_3_16_0_ym19_1_1481657653721_3217"> </i>Also, with experimental oberon, does that mean that if I buy an
><i id="yui_3_16_0_ym19_1_1481657653721_3220"> </i>oberonstation I can install experimental oberon on it rather than the one
><i id="yui_3_16_0_ym19_1_1481657653721_3226"> </i>that it ships with? Sorry, I'm a newbie to this..
<br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><div dir="ltr" style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; white-space: normal;" id="yui_3_16_0_ym19_1_1481657653721_3359"><font face="Courier New" id="yui_3_16_0_ym19_1_1481657653721_3360"><span style="white-space: pre-wrap;" id="yui_3_16_0_ym19_1_1481657653721_3361">Yes, one can install Experimental Oberon on an Oberon station (instructions to upgrade from an existing Original Oberon installation are on the Experimental Oberon page; then just create an image using the building tools that are part of Experimental Oberon).</span></font></div><div dir="ltr" id="yui_3_16_0_ym19_1_1481657653721_3362"><font face="Courier New" id="yui_3_16_0_ym19_1_1481657653721_3363"><span style="white-space: pre-wrap;" id="yui_3_16_0_ym19_1_1481657653721_3364"><br id="yui_3_16_0_ym19_1_1481657653721_3365"></span></font></div><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre>
><i id="yui_3_16_0_ym19_1_1481657653721_3228"> </i>And, is experimental oberon ever going to work with the original oberon
><i id="yui_3_16_0_ym19_1_1481657653721_3230"> </i>code developer or it will remain a separate fork with no real input back
><i id="yui_3_16_0_ym19_1_1481657653721_3232"> </i>into the original source tree..</pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110">There is in a backward-compatible version of Experimental Oberon on the Github page as well. However, it does not contain all features. It would be an easy task to make the full Experimental Oberon backward compatible with Original Oberon, but I have refrained from doing so, for several reasons: it would lead to code duplications just for compatibility reasons, some modules of Experimental Oberon (MenuViewers, Viewers) are (will be) actually *simpler* than Original Oberon and that property would go aways, etc.</pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110">I don't think Experimental Oberon will ever be merged back into Original Oberon. The two systems pursue different goals. Original Oberon tries to be minimalistic, so even the rather basic task of continuous scrolling - which makes the Oberon GUI considerably easier and much more natural to use, with zero initial learning curve - would be considered as "unnecessary bells and whistles".</pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110">Original Oberon also does not really care that the user can put the system in an unsafe state merely by e.g. unloading a module (Oberon is an unsafe system anyway, in the sense that any user can just delete any system-critical file to break the system).</pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110">By contrast Experimental Oberon believes in *sensible" extensions (think: 100-200 lines per added feature, not more) that add real value, e.g.,</pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110">- completely safe module unloading (50 lines) .. for increased safety</pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110">- virtual displays (100 lines).. important for touch devices</pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110">- continuous line scrolling (200 lines).. making the GUI much easier to use</pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110">etc.</pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br></pre><pre id="yui_3_16_0_ym19_1_1481657653721_3110"><br id="yui_3_16_0_ym19_1_1481657653721_3497">

</pre><ul style="font-family: -webkit-standard;" id="yui_3_16_0_ym19_1_1481657653721_3115"></ul><div style="color: rgb(0, 0, 0); font-family: -webkit-standard; 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-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255);" id="yui_3_16_0_ym19_1_1481657653721_3116"></div><hr style="color: rgb(0, 0, 0); font-family: -webkit-standard; 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-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255);" id="yui_3_16_0_ym19_1_1481657653721_3117"></div></body></html>