Note that there are some explanatory texts on larger screens.

plurals
  1. POCreate a JVM programming language
    primarykey
    data
    text
    <p>I have created a compiler in C (using lex &amp; bison) for a dynamic typed programming language that supports loops, functions declarations inside functions, recursive calls etc. I also created a virtual machine that runs the intermediate code created by the compiler.</p> <p>I was now thinking instead of compiling to my own intermediate code, compile it to java byte code. </p> <p>I saw that the question about creating a JVM language has already been <a href="https://stackoverflow.com/questions/716613/how-to-make-a-net-or-jvm-language">asked</a> but I don't find the answer very informative.</p> <p>So here are my questions: </p> <ol> <li>I guess to create a language for JVM a must is to read the <a href="http://java.sun.com/docs/books/jvms/second_edition/html/VMSpecTOC.doc.html" rel="nofollow noreferrer">JVM specification</a> book, what other books can you suggest (except Dragon Book of course)? I'm mostly concerned about books or tutorials on how to create a JVM language, not a compiler in general.</li> <li>There are many Java libraries to read, write and change .class files like <a href="http://www.ej-technologies.com/products/jclasslib/overview.html" rel="nofollow noreferrer">jclasslib</a>, <a href="http://jakarta.apache.org/bcel/" rel="nofollow noreferrer">bcel</a>, <a href="http://www.gnu.org/software/kawa/api/gnu/bytecode/package-summary.html" rel="nofollow noreferrer">gnu bytecode</a>, etc. Which one would you suggest? Also, are you aware of C libraries that do the same job?</li> <li>I was thinking about having a look at maybe another language that targets the JVM like Clojure, Jython or JRuby. But all these languages are very high level and complicated (to create a compiler for them). I was looking for a simpler (I don't mind if it's unknown or unused) programming language that targets the JVM and it's compiler is open source. Any ideas?</li> </ol>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload