ループ、関数内の関数宣言、再帰呼び出しなどをサポートする動的型付きプログラミング言語用のコンパイラをCで(Lex&Bisonを使用して)作成しました。また、コンパイラによって作成された中間コードを実行する仮想マシンも作成しました。
自分の中間コードではなく、Javaバイトコードにコンパイルすることを考えていました。
JVM言語の作成についての質問はすでに出されているのを見ましたが、その答えはあまり有益ではありません。
だからここに私の質問があります:
- JVM用の言語を作成するには、JVM仕様書を読む必要があると思いますが、他にどのような本を提案できますか(もちろんドラゴンブックを除く)。私は主に、一般的なコンパイラではなく、JVM言語を作成する方法に関する本やチュートリアルに関心があります。
- jclasslib、bcel、gnuバイトコード
.class
などのファイルを読み書きおよび変更するための多くのJavaライブラリがあります。どれを提案しますか?また、同じ仕事をするCライブラリを知っていますか? - Clojure、Jython、JRubyなどのJVMをターゲットとする別の言語を検討することを考えていました。しかし、これらの言語はすべて非常に高レベルで複雑です(それらのコンパイラーを作成するため)。私は、JVMを対象とし、オープンソースコンパイラを使用する、より単純な(不明であるか未使用であるかは関係ありません)プログラミング言語を探していました。何か案は?