2017-03-05 2 views
0

Ich muss ein DSL und einen Interpreter davon mit Eclipse Modeling Framework tun, denke ich, weil ich nicht viele Informationen darüber habe. Ich habe vier Monate, um es zu tun, und ich bin sehr verloren.In Eclipse einen DSL und einen Interpreter erstellen?

Die DSL müssen Dateien von Sensoren lesen, und mit der DSL können Sie komplexe mathematische Operationen durchführen. Jeder kennt eine freie Ressource/Buch/Tutorial/Guide, wo ich darüber lesen kann (ich kann nichts Nützliches finden) oder jemand kann meine einige Hinweise folgen und wie starten. Ich danke dir sehr.

Ich versuche ein paar Beispiele zu finden, die sowas machen und ich kann nichts finden.

+0

Es scheint, dass Sie die offensichtlichsten Projekte für diese Art von Aufgabe verpasst haben: Xtext, Xcore, Xbase ... –

+0

Ja, ich weiß, dass ich mit Xtext ein DSL machen kann, aber kann ich einen Interpreter damit implementieren? Ich verstehe nicht den "Workflow", um alle Werkzeuge für alle zusammen zu stellen. – Aikas

Antwort

1

Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit und EMF: Eclipse Modeling Framework (2nd Edition) sind zwei große Bücher zu diesem Thema, das Sie je für etwa fünf Dollar gewöhnen können. Obwohl sie nicht kostenlos sind, sind sie den kleinen Preis wert. Es gibt auch eine neuere Referenz Implementing Domain Specific Languages with Xtext and Xtend, die sehr relevant scheint, aber ich hatte noch nicht das Vergnügen, es zu lesen, kann also nicht dafür bürgen.

Es gibt auch viele kostenlose Gespräche zu diesen Themen auf youtube und alle EMF, Xtext, etc. Websites haben eine ganze Reihe von Tutorials.

Basierend auf dieser Frage: Interpreter vs. Code Generator Xtext, Xtext scheint keine Interpreter zu unterstützen, aber Xbase kann.

1

Es gibt Beispiele für die Verwendung von XText zum Erstellen eines Interpreters/einer interpretierten Sprache (z. B. https://eclipse.org/Xtext/documentation/202_scripting.html).

Für mich dauerte es eine Weile, bis alle Plugins-Konfigurationen korrekt waren, aber es ist gut dokumentiert, auf Xtext Web und in GitHub/Tutorials.

Schauen Sie auch auf XTend (http://www.eclipse.org/xtend/), da dies eine große birck im XText-Framework ist.

Verwandte Themen