7

重複の可能性:
言語のブートストラップ

ターゲット言語 (たとえば、PyPy ) で記述された特定の言語のインタープリターを持つことの重要性は何ですか?

4

4 に答える 4

7

インタープリター自体を書くことはそれほど重要ではなく、C ではなく高級言語でインタープリターを書くことです。理想的には、そうすることで実装の詳細を変更し、インタープリターをよりモジュール化することができます。

PyPy の特定のケースでは、(R)Python でインタープリターとコア オブジェクトを作成すると、ターゲット (C、JVM、.NET、JavaScript など) の PyPy を再ターゲットでき、ガベージ コレクターなどの側面を置き換えることもできます。

于 2008-11-09T20:45:38.040 に答える
2

そうする理由はさまざまだと思います。場合によっては、その言語が最良のツールであると本当に信じているためです...言語自体で言語インタープリターまたはコンパイラーを作成することは、ドッグフーディングの一種と見なすことができます。このテーマに本当に興味があるなら、次の記事は squeak の開発に関する非常に素晴らしい読み物です。squeak の現在のバージョンは、smalltalk で書かれた smalltalk ランタイムです。

http://users.ipa.net/~dwighth/squeak/oopsla_squeak.html

于 2008-11-09T20:35:45.860 に答える
0

追加の利点は、ターゲット言語に適したデバッガーとIDEを実装すると、それらがソース言語でも機能することです。

于 2008-11-17T18:53:25.493 に答える
0

このようにして、ターゲット言語が真剣なビジネスであることを証明できます。これは、何かをコンパイルできるということは、それが優れた言語であることを示しているからです。

わかりました、C++ と Java も同様にコンパイラを生成します... したがって、その議論は見た目の半分にすぎないかもしれません。

于 2010-07-08T05:56:29.343 に答える