<div dir="ltr">Hi Ron, Hi All,<div class="gmail_extra"><br><div class="gmail_quote">On Thu, Sep 22, 2016 at 11:58 AM, Ron Teitelbaum <span dir="ltr">&lt;<a href="mailto:ron@usmedrec.com" target="_blank">ron@usmedrec.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Hi All,<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Sorry I’m joining this conversation late.  <u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">We are using ImageSegment for transferring croquet island state.  Is this something covered in the changes from Bert or are we talking about dropping ImageSegment altogether? </span></p></div></div></blockquote><div><br></div><div>I suppose I should explain.  At ESUG Bert and others announced support for Toys in Squeak 5.1.  As part of this work, ImageSegment loading and saving was moved from the VM up into pure Smalltalk code.  This allows Squeak 5.1 (Spur) to load image segments saved on pre-Spur VMs.  Consequent;ly we no longer need VM support for ImageSegment.  Instead we can use the pure image-level code Bert has kindly written.  The question is then at what point can we nuke the Spur VM support, since it is now superfluous.</div><div><br></div><div>Bert, am I jumping the gun?  Do we still need to write image-level support for writing image segments?  If this is the case, Igor Stasenko described a primitive for collecting the set of objects to be written out.  It is the initial part of the segment-writing primitive that collects the transitive closure of objects reachable only from those root objects.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"> <u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">All the best,<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Ron Teitelbaum<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> Pharo-dev [mailto:<a href="mailto:pharo-dev-bounces@lists.pharo.org" target="_blank">pharo-dev-bounces@<wbr>lists.pharo.org</a>] <b>On Behalf Of </b>Eliot Miranda<br><b>Sent:</b> Thursday, September 22, 2016 2:47 PM<br><b>To:</b> Squeak Virtual Machine Development Discussion<br><b>Cc:</b> Pharo Development List; The general-purpose Squeak developers list<br><b>Subject:</b> Re: [Pharo-dev] [Vm-dev] Re: Nuking VM ImageSegment support (was Re: [squeak-dev] Daily Commit Log; System-bf.916)<u></u><u></u></span></p><div><div class="h5"><p class="MsoNormal"><u></u> <u></u></p><div><p class="MsoNormal">Hi Max,<u></u><u></u></p><div><p class="MsoNormal"><u></u> <u></u></p><div><p class="MsoNormal">On Thu, Sep 22, 2016 at 11:42 AM, Max Leske &lt;<a href="mailto:maxleske@gmail.com" target="_blank">maxleske@gmail.com</a>&gt; wrote:<u></u><u></u></p><p class="MsoNormal"> <u></u><u></u></p><div><p class="MsoNormal"><u></u> <u></u></p><div><blockquote style="margin-top:5.0pt;margin-bottom:5.0pt"><div><p class="MsoNormal">On 22 Sep 2016, at 20:28, Eliot Miranda &lt;<a href="mailto:eliot.miranda@gmail.com" target="_blank">eliot.miranda@gmail.com</a>&gt; wrote:<u></u><u></u></p></div><p class="MsoNormal"><u></u> <u></u></p><div><div><p class="MsoNormal">Hi Bert, Hi All,<u></u><u></u></p><div><p class="MsoNormal"><u></u> <u></u></p><div><p class="MsoNormal">On Thu, Sep 15, 2016 at 2:55 PM, &lt;<a href="mailto:commits@source.squeak.org" target="_blank">commits@source.squeak.org</a>&gt; wrote:<u></u><u></u></p></div><div><p class="MsoNormal">[snip]<u></u><u></u></p><p class="MsoNormal"><a href="http://lists.squeakfoundation.org/pipermail/packages/2016-September/068930.html" target="_blank">http://lists.squeakfoundation.<wbr>org/pipermail/packages/2016-<wbr>September/068930.html</a><br><br>Name: System-bf.916<br>Ancestors: System-bf.915<br><br>Replace VM-level ImageSegment loading with a Smalltalk implementation for old (interpreter-era) projects.<br><br>Also removes support for writing segments.<br><br>This overrides the Spur support introduced in System-eem.758.<u></u><u></u></p><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal"> So one question is should we delete VM support for ImageSegment from the Spur VM?  There&#39;s at least 1.5k of generated source for the Spur ImageSegment load and save support, some 2% of the interpreter/primitives source code.  That&#39;s a lot, and the code is complex and ugly.  If it never really worked before IMO we should nuke it asap.  If it worked in some fashion perhaps we can schedule its demise for the 6.0 release&#39;s VM.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">What do others think?<u></u><u></u></p></div></div></div></div></div></blockquote><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">As long as you don’t remove it from the Cog VM’s until I no longer need it I’m fine with that.<u></u><u></u></p></div></div></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">And when would that be?  Do you mean that you use it in ways not covered by Bert&#39;s modifications (which render the VM support superfluous), or do you mean that you use ImageSegment as a naive consumer and are happy just so long as it works?<u></u><u></u></p></div><div><p class="MsoNormal"> <u></u><u></u></p></div><blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in"><div><div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Max<u></u><u></u></p></div><p class="MsoNormal"><br><br><u></u><u></u></p><div><div><div><div><div><p class="MsoNormal"><u></u> <u></u></p></div></div><div><div><div><div><p class="MsoNormal">_,,,^..^,,,_<u></u><u></u></p></div><div><p class="MsoNormal">best, Eliot<u></u><u></u></p></div></div></div></div></div></div></div></div><p class="MsoNormal"><u></u> <u></u></p></div><p class="MsoNormal"><u></u> <u></u></p></blockquote></div><p class="MsoNormal"><br><br clear="all"><u></u><u></u></p><div><p class="MsoNormal"><u></u> <u></u></p></div><p class="MsoNormal">-- <u></u><u></u></p><div><div><div><div><p class="MsoNormal">_,,,^..^,,,_<u></u><u></u></p></div><div><p class="MsoNormal">best, Eliot<u></u><u></u></p></div></div></div></div></div></div></div></div></div></div><br><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</div></div>