Я сейчас создаю компилятор Javascript в ANTLR и JAVA.
Я использую древовидную грамматику ANTLR для генерации AST. (Все еще сомневаюсь, что это умнее, чем гетерогенный подход с классом Abstract, заданным вручную для генерации узлов, но это уже другая тема).
Моя проблема в том, что когда я проанализировал некоторые входные данные, скажем, var x = 5 ; это внутренне представлено как; VARDECL как корень и x как левый потомок и 5 как правый потомок.
Теперь у меня есть возможность распечатать это дерево, используя команду toStringTree () , которая выводит (VARDECL x 5) - это представление становится довольно трудным для понимания в больших программах, поэтому мне было интересно, существует ли сторонний инструмент, который принимает это текстовое представление дерева в качестве входных данных и может выводить хорошую графическую модель дерева? (Или я должен это реализовать)
С уважением, Сьюн.