<html><head></head><body bgcolor="#FFFFFF"><div>Maybe we could do a general prototype centric vm collaboration<span class="Apple-style-span" style="-webkit-tap-highlight-color: rgba(26, 26, 26, 0.296875); -webkit-composition-fill-color: rgba(175, 192, 227, 0.230469); -webkit-composition-frame-color: rgba(77, 128, 180, 0.230469); ">,</span></div><div>we currently build one for Io, and </div><div>as the languages are pretty close to each other, it would be trivial to make Self run on it. The optimization and jit needed for self Is a subset of the optimizations Io requires, thus It would basically need an other syntax and std lib but the object models are pretty much the same.</div><div>It is pretty small and tidy ~1.7 kloc.<br></div><a href="https://github.com/jeremytregunna/caribou">https://github.com/jeremytregunna/caribou</a><div><br>Cheers Jan</div><div><br>On 09.12.2011, at 19:00, baltasarq <<a href="mailto:baltasarq@gmail.com">baltasarq@gmail.com</a>> wrote:<br><br></div><div></div><blockquote type="cite"><div>














<span style="display:none"> </span>



    <div id="ygrp-text">
      
      
      <p><br>
        Hi, there !<br>
        <br>
> > The existing VM is big and scary, but works and is in a small set of <br>
> > powerful cross platform VMs.<br>
<br>
        The Self VM is great in the sense that it works through a JITter. However, this great thing is also its main weak point: it is difficult to port it to new platforms, since it involves both deep knowledge on the target platform and on the Self VM itself.<br>
<br>
        My two cents: I think it would be better, less ambitious, and thus finishable to write an interpreter. Yep, that would make Self a little bit less appealing, but on the other hand it could be usable in other platforms.<br>
<br>
        The jitter is still could still be an option for some platforms. I don't really know how the jitter works in the Self VM, but it could be redesigned to work as in the Java VM: to identify hotspots, and in the presence of a jitter for the platform it is running on top of, compile the code. Maybe this is simply what David Ungar meant by tidying the VM up, don't know. Anyway, there must exist the posibility of running the code just by interpreting it, for those platforms there is not a jitter available.<br>
<br>
-- <br>
Baltasar (<a href="mailto:baltasarq%40gmail.com">baltasarq@gmail.com</a>  <a href="http://baltasarq.info/">http://baltasarq.info/</a>)<br>
</p>

    </div>
     

    





<!-- end group email -->

</div></blockquote></body></html>