Сборка компилятора для DSL с использованием ANTLR и цели Antlr CSharp - PullRequest
2 голосов
/ 30 сентября 2010

Я занимаюсь написанием компилятора, который компилирует DSL для конкретного проекта (с возможностями базового языка сценариев) в язык ассемблера для конкретного проекта.Платформа написана на C #, поэтому нативный .NET-компилятор был бы идеальным решением.

Я уже провел много исследований, и кажется, что ANTLR подойдет для работы по компиляции, на случай, если яправильно понимать следующие вещи:

Я должен написать файл грамматики и «шаблон», который испускает ассемблер.ANTLR-framework (java) генерирует компилятор из файла грамматики.Сам компилятор является чистым C # (с использованием Antlr 3 CSharp Target) и может после компиляции в сборку .NET скомпилировать «мой» DSL в наш пользовательский ассемблер.

Я понял?И нет ли окончательно никакой необходимости в Java / ANTLR-Java-API во время выполнения (= при «использовании» компилятора)?(Я также открыт для других решений / фреймворков, если полученный компилятор является компонентом .NET).

Thx:)

1 Ответ

2 голосов
/ 30 сентября 2010

Подробная информация об использовании цели CSHarp для ANTLR

В итоге:

Все, что вам нужно, - это код синтаксического анализатора / лексера C #, который ANTLR генерирует дополнительно.на ссылку на ntlr3.Runtime.dll.

dll является смоделированным после версии Java, но не использует и не вызывает ничего, что является Java.

...