2011-06-20 16 views
0

最近、自分の言語を作成することを考えていました。 .Net System.Reflection.Emitライブラリを使用して、簡単な言語用のパーサ/コンパイラを作成する際のガイド付きの経験がいくつかあります。私はそのライブラリの使用が本当に好きです。特にオブジェクト指向の言語設計に焦点を当てています。ネイティブオブジェクト指向コンパイラライブラリ

問題は、私はむしろそれが母国語になることです。だから私は不思議だった:(System.Reflection.Emitのような)オブジェクト指向言語のコードを生成することに焦点を当てたライブラリを使用するのは良い/単純なライブラリがありますが、実際には管理されたコードではなくネイティブコードを出すでしょうか?

注:私は実際のネイティブコード生成に焦点を当てていますが、解析中ではありません。また、ライブラリがC++から簡単にアクセスできるようにするのが望ましいでしょうが、どんな言語でも動作します。

答えて

3

LLVMは、ポータブルコンパイラのコード生成バックエンドとして機能するように設計されたオープンソースのC++ライブラリです。とりわけ、clang C/C++/ObjCコンパイラではすでに使用されています。

+0

申し訳ありませんが返信に時間がかかります。私にLLVMプロジェクトを見せてくれてありがとう - それは私が探しているものに近いです。実際には、私が望むものを正確に実行するために、LLVMの周りに自分の薄いラッパーを作ることができると思います。 –

関連する問題