2009-03-23 15 views
1

Unsere Projektgruppe arbeitet an einer Java-Spracherweiterung und wir haben versucht herauszufinden, welches Tool wir für diesen Zweck verwenden sollten. Die Erweiterung wird hauptsächlich aus einer Modifikation des in Java verwendeten Parallelitätsmodells bestehen. Wir haben uns zwei Tools angesehen: Polyglot und Javacc. Javacc scheint etwas benutzerfreundlicher zu sein, aber da wir einige signifikante Änderungen an der Sprache vornehmen werden, ist es vielleicht immer noch keine gute Idee, sie über den fortgeschritteneren Polyglot zu verwenden, da sie besser mit der erhöhten Komplexität umgehen können .Was ist das beste Werkzeug zum Erstellen einer Java-Erweiterung?

Haben Sie Erfahrung mit diesen Werkzeugen und/oder haben Sie andere Werkzeugempfehlungen?

Antwort

1

ANTLR ist eine sehr gute Wahl. Es ist ein bisschen aktiver als JavaCC und die Dokumentation ist besser. Es gibt ein Buch auf Amazon, das Sie als sehr hilfreich finden.

2

Überprüfen Sie Jetbrain's MPS, aber ich habe bisher keine Erfahrungen damit.

+1

MPS ist ein großartiges Werkzeug zum Erstellen und Erweitern von Sprachen, nicht nur auf Java-Basis. Es ist genau das passende Werkzeug, wenn Sie einige Teile der Java-Sprache oder Standardbibliotheken neu schreiben müssen. Sie sollten _defineTely_ verbringen eine Woche lernen ihr System (einschließlich Actors Framework), bevor Sie Ihre eigenen Java-Erweiterungen erstellen. –

+0

@Alex arbeitest du für Jetbrains? –

Verwandte Themen