<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Sep 5, 2011, at 2:04 PM, Mildred Ki'Lya wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">













<div style="background-color: rgb(255, 255, 255); position: static; z-index: auto; ">
<span style="display:none"> </span>



    <div id="ygrp-text"><p><br><br></p><div class="gmail_quote"><br><blockquote class="gmail_quote" style="border-left:1px #ccc solid;"><div style="background-color:#fff;"><div><div><div><div><div><div><blockquote type="cite">

<div style="background-color:rgb(255, 255, 255);"><div><div class="gmail_quote"><div><br>Over the last two days, I found out about Klein, but the project seems dead, isn't it? I just looked at the source tree on github and there are C source files, If it's supposed to be written in Self, then I don't understand their purpose.<br>

</div></div></div></div></blockquote></div></div></div>The C code is there for the Debugger, Klein was designed to be able to Run on one Machine and Debug another, to do this it needs a little helper if anything goes wrong and you, for example break the JIT, in this case you need to fall back to a other native piece of code that is written in C, but I think if Klein was finished it would be easy to write that debug server in Self.</div>

</div></div></div></blockquote><div><br>Ok, thanks.<br><br>So probably, I'd need this cone at one point if I'm playing with Klein. The problem is that's an Xcode project, and there is no makefile. I'll see that if I need it.<br>

</div><blockquote class="gmail_quote" style="border-left:1px solid rgb(204, 204, 204);"><div style="background-color:rgb(255, 255, 255);"><div><div><div><div><br>
<blockquote type="cite"><div style="background-color:rgb(255, 255, 255);"><div><div><div><div class="gmail_quote"><div>
<br>As far as I can think, the VM itself can't be written in a language that requires a VM. Or else, we'd need to maintain that VM itself. The only way is to get a compiler for Self.</div></div></div></div></div>

</div></blockquote></div><div>You underestimate the Self System a bit here, it was the one that developed the Java JIT Hotspot stuff, before it it became that.</div><div>Klein is basically a Self compiler, yes it is also a VM, but with JIT now supported by most other languages it's not so uncommon anymore ;)</div>

<div>What it does when bootstrapping the VM is basically emitting the JIT code and then deep freezing it by statical linking and exporting to a file.</div></div></div></div></div></blockquote><div><br>That's what I thought after I found the 2005 paper describing Klein.<br>
Apparently, there is a PPC assembly backend that works, i386 and sparc modules. Basically, what is needed is a llvm backend so it could be cross platform.<br><br>
</div><blockquote class="gmail_quote" style="border-left:1px solid rgb(204, 204, 204);"><div style="background-color:rgb(255, 255, 255);"><div><div><div><div><br>
<blockquote type="cite"><div style="background-color:rgb(255, 255, 255);"><div><div><div><div class="gmail_quote"><div><div></div><div><br>Thank you for the pointers, I already started my own compiler based on the syntax rules on the Self website, but these might be interesting.<br>

</div></div></div></div></div></div></div></blockquote></div>Afaik there is also a Parser generator written in Self in the Klein bundle, I don't know if it is mango or yoda ^^, one of the two ;)</div></div></div></div>
</blockquote><div><br>Yoda I think.<br></div></div></div></div></div></div></blockquote>It's mango :D even though language of yoda one reminds of parsers more.</div><div>Yoda is a small Image for embedded devices like the iPhone or newton ;)</div><div><br></div><div>Cheers, Jan</div><div><blockquote type="cite"><div style="background-color: rgb(255, 255, 255); position: static; z-index: auto; "><div id="ygrp-mlmsg" style="position:relative;"><div id="ygrp-msg" style="z-index: 1;"><div id="ygrp-text"><div class="gmail_quote"><div>I think i'll work with klein rather than developing everything again.</div><br><br>Mildred<br></div><br><br clear="all"><br>-- <br>Mildred Ki'Lya<br><a href="http://mildred.fr/" target="_blank">http://mildred.fr</a><br><div><br class="webkit-block-placeholder"></div>

    </div>
     

    

</div>



<!-- end group email -->

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