Инструменты разработки

Всё для работы с «Глаголом» за пределами площадки: компилятор в байт-код JVM, плагин для OpenIDE, подсветка в редакторах и навык для ИИ-агентов. Исходники — на российском GitFlic.

Компилятор (Глагол → байт-код JVM)

Второй бэкенд рядом с интерпретатором: программа на «Глаголе» компилируется в настоящий байт-код JVM (через ASM) — путь к скорости и к отечественным процессорам (Эльбрус/Байкал). Одна семантика с интерпретатором сверяется дифференциальными тестами.

Собрать и запустить

# самодостаточный CLI-jar
./gradlew uberJar

# истолковать + показать отчёт «проверь»
java -jar build/libs/глагол-all.jar путь/файл.гл

# скомпилировать в байт-код и запустить
java -jar build/libs/глагол-all.jar -к путь/файл.гл

# собрать исполняемый .jar (запуск: java -jar имя.jar)
java -jar build/libs/глагол-all.jar --jar файл.гл -o имя.jar

Вывод — в UTF-8, кириллица печатается корректно. Исходники компилятора: GitFlic, каталог src/main/kotlin/ru/glagol/.

Плагин для OpenIDE

OpenIDE (ребренд IntelliJ IDEA Community) с плагином понимает .гл: своя иконка, подсветка синтаксиса, подсветка ошибок из настоящего парсера, запуск через компилятор (▶ / Ctrl+Shift+F10) с выводом в консоль, пункт New → «Файл Глагол».

Собрать и установить

  1. Собери тулинг-jar и плагин:
    ./gradlew uberJar
    ./gradlew -p плагин buildPlugin -Popenide.path="<путь к OpenIDE/IDEA>"
    Получится плагин/build/distributions/глагол-openide.zip.
  2. В IDE: Settings → Plugins → ⚙ → Install Plugin from Disk… → выбери .zip → перезапусти IDE.

Совместимость: сборка 253 (OpenIDE 2025.3 / IntelliJ 2025.3), диапазон 2023.3–2025.3. Плагин самодостаточен — компилятор внутри. Исходники: GitFlic, каталог плагин/.

Навык «глагол» для ИИ-агентов

Компактный навык (skill), по которому ИИ-агент пишет корректные программы на «Глаголе»: проверенный синтаксис, команды запуска и типичные ошибки. Свежий агент по одному этому файлу решает задачи (в наших прогонах — вплоть до LeetCode Hard).

Файл: GitFlic, .claude/skills/глагол/SKILL.md. Для Claude Code — положи его в .claude/skills/ проекта или в пользовательский профиль.

Подсветка в редакторах (TextMate)

Пока плагин — под OpenIDE/JetBrains, для VS Code и других редакторов подсветку .гл даёт TextMate-грамматика.

И VS Code, и среды JetBrains читают одну структуру — папку с package.json и грамматикой. Одиночного .tmLanguage.json недостаточно. Собери папку:

  1. Создай glagol/, внутри — syntaxes/.
  2. Скачай грамматику в glagol/syntaxes/glagol.tmLanguage.json.
  3. Рядом создай glagol/package.json:
{
  "name": "glagol",
  "version": "0.0.1",
  "engines": { "vscode": "^1.0.0" },
  "contributes": {
    "languages": [{ "id": "glagol", "extensions": [".гл"], "aliases": ["Глагол"] }],
    "grammars": [{
      "language": "glagol",
      "scopeName": "source.glagol",
      "path": "./syntaxes/glagol.tmLanguage.json"
    }]
  }
}
Почему GitFlic, а не GitHub. Исходник живёт на российском GitFlic — это в русле проекта. Зеркало на GitHub заведём, если понадобится.