11.1K ·GitHub
Что это такое?
Это большой набор формальных грамматик для ANTLR v4, охватывающий языки программирования и форматы файлов, такие как Java, C++, C#, JSON и многие другие.
Это библиотека парсеров или набор файлов с грамматиками?
Это набор файлов с определениями грамматик (.g4), по одной папке на каждый язык или формат. Их нужно передать инструменту ANTLR v4, чтобы сгенерировать парсеры для нужного языка.
Как мне использовать грамматику из этого репозитория?
Выберите папку для нужного языка (например, java, cpp, csharp), затем запустите инструмент ANTLR v4 для её файла .g4, чтобы сгенерировать лексер и парсер для целевого языка.
Нужен ли мне сам инструмент ANTLR v4, чтобы использовать эти грамматики?
Да, это исходные грамматики, которые нужно обрабатывать генератором ANTLR v4. Самого генератора в этом репозитории нет.
Содержат ли эти грамматики встроенный код для моего целевого языка?
Нет, проект прямо требует, чтобы грамматики не содержали действий (actions). Так они не привязаны к конкретному целевому языку и не завязаны на определённую среду выполнения.
Как отслеживается производительность грамматик?
В репозитории ведётся сортируемая таблица производительности грамматик, которая сравнивает скорость разбора и другие метрики для включённых грамматик.
Есть ли автоматические сборки для этих грамматик?
Да, есть CI-воркфлоу для основной сборки, еженедельной dev-сборки и еженедельной сборки jar.
What are similar projects?
antlr4, nom, guidance, static-analysis, G2, awesome-mcp-servers, languagetool, roslyn
Which topics is it in?
grammar, tool-calling, parser, reference, java, hacktoberfest, resources, library, developer-tools, mit, open-source