Hi David,<div><br></div><div>&nbsp;&nbsp; &nbsp;I have been tardy in leaving a blog post and important updates unpublished while I&#39;ve worked on the stack VM and a profiler. &nbsp;I&#39;ll try extra hard this week to update the web site and the code now I have an external user (very exciting!!).</div>
<div><br></div><div>Thanks!!<br><br><div class="gmail_quote">On Sun, Nov 2, 2008 at 6:31 PM, David T. Lewis <span dir="ltr">&lt;<a href="mailto:lewis@mail.msen.com">lewis@mail.msen.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
On Tue, Jul 22, 2008 at 06:14:51PM -0700, Eliot Miranda wrote:<br>
&gt; Hi All,<br>
&gt; &nbsp; &nbsp; I&#39;ve made a significant step today in making available the first cut of<br>
&gt; my closure scheme. &nbsp;There is a new blog post on<br>
&gt; <a href="http://www.mirandabanda.org/cogblogabout" target="_blank">www.mirandabanda.org/cogblogabout</a> the closure bytecodes which at the<br>
&gt; end includes a pointer to the<br>
&gt; bootstrap @ <a href="http://www.mirandabanda.org/files/Cog/Closures0808/Bootstrap/" target="_blank">www.mirandabanda.org/files/Cog/Closures0808/Bootstrap/</a>. &nbsp;The<br>
&gt; bootstrap has been tested on internal Qwaq images, and on Croquet 1.0 and<br>
&gt; Squeak 3.9. &nbsp;I&#39;d love to hear of other ports, e.g. to 3.10 and to Spoon.<br>
&gt; &nbsp;I&#39;m interested in bug reports (I haven&#39;t yet tested eToys) and code reviews<br>
&gt; and tying up loose ends (for example I broke decompile with temp names and<br>
&gt; haven&#39;t fixed it).<br>
<br>
I can confirm building a VM from the ClosureVMBootstrap.1.cs change set with<br>
SqueakSource VMMaker-dtl.104 (non-Croquet) on Squeak 3.8 on Linux. It works<br>
fine and I see no issues with backward compatibility for existing images.<br>
<br>
I am attaching the changes that were required to merge ClosureVMBootstrap with<br>
a non-Qwaq VMMaker. The changes were as follows:<br>
<br>
- Add missing ClassBlockClosure var to ObjectMemory<br>
- Merge class and instance var defs in Interpreter<br>
- Remove large integer stuff from #initializePrimitiveTable (is this for Croquet?)<br>
- Delete (now unused) primitiveObsoleteIndexedPrimitive<br>
<br>
The ClassBlockClosure definition in ObjectMemory was probably an accidental<br>
omission from the ClosureVMBootstrap change set, and the remainder of the<br>
changes are a straightforward merge for a different flavor of VMMaker.<br>
<br>
I have not yet progressed as far as getting the closure compiler loaded,<br>
but the closure-enabled VM seems to be trouble-free and fully backward<br>
compatible.<br>
<br>
Dave<br>
<br>
</blockquote></div><br></div>