<br><br><div class="gmail_quote"><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><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="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204, 204, 204);padding-left:1ex"><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="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204, 204, 204);padding-left:1ex"><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>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>