<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Nov 27, 2013 at 8:05 AM, Levente Uzonyi <span dir="ltr"><<a href="mailto:leves@elte.hu" target="_blank">leves@elte.hu</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Wed, 27 Nov 2013, gettimothy wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I am confused as to what the term 'Stack VM' refers to.<br>
</blockquote>
<br></div>
"The StackInterpreter is an intermediate step after closures and before the JIT to ensure steady progress and on-time delivery of a substantially faster VM. The essential point, of course, is that a stack organization suits the use of native call and return instructions whose use, along with in-line cacheing techniques, substantially improve send and return performance." - <a href="http://www.mirandabanda.org/cogblog/2009/01/14/under-cover-contexts-and-the-big-frame-up/" target="_blank">http://www.mirandabanda.org/<u></u>cogblog/2009/01/14/under-<u></u>cover-contexts-and-the-big-<u></u>frame-up/</a><br>
<br>
I would say it's a CogVM without a JIT.</blockquote><div><br></div><div>Exactly. Another way of saying it is that the StackVM is an interpreter that doesn't use contexts. Instead it uses stack frames, much like a conventional language implementation. And remember "doesn't use contexts" doesn't mean "doesn't have contexts"; instead context objects are created when the program asks for them instead of on every send. The StackVM's performance is about 1.5x the Context Interpreter VM. The Cog VM is about 5x the Context Interpreter VM.</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="HOEnZb"><font color="#888888">
Levente</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
> Here is the outline I have. > > Smalltalk VM = Blue <br>
</blockquote>
Book > Squeak VM = Tim Rowledge's OE-Tour.pdf<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Stack VM = ??<br>
Cog = Squeak VM redesigned per <a href="http://www.mirandabanda.org/cogblog/about-cog/" target="_blank">http://www.mirandabanda.org/<u></u>cogblog/about-cog/</a><br>
<br>
thx,<br>
<br>
tty<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</blockquote>
</div></div><br><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br>best,<div>Eliot</div>
</div></div>