1. Установка
Для работы с Archlang нужны три вещи:
- CLI — для валидации и форматирования файлов.
- Редактор с подключённым языковым сервером — для автодополнения и диагностики.
- Просмотрщик — чтобы видеть диаграммы, в которые рендерятся ваши файлы.
Эта глава ставит все три. Если они у вас уже есть — пробегитесь и переходите к Главе 2.
CLI
npm install -g @archlang/cliЭто добавляет archlang в PATH. Четыре подкоманды:
archlang info path/to/package # сводка по пакетуarchlang validate path/to/package # валидация; ненулевой код возврата при ошибкахarchlang check path/to/package # валидация + производные проверкиarchlang format path/to/file.arch # каноническое форматирование (создаёт стабильные идентификаторы)archlang validate принимает --watch и перезапускается на каждое изменение файла. archlang format принимает --check (ненулевой код возврата, если что-то изменилось бы) и --diff (вывести предлагаемые изменения, не записывая).
Командой format вы будете пользоваться постоянно — она создаёт стабильные идентификаторы, представленные в Главе 13, так что большинство файлов в книге написаны без идентификаторов и получают их при первом сохранении.
Редактор
Два редактора поддерживаются как полноправные клиенты языкового сервера Archlang:
- VS Code — установите расширение Archlang из маркетплейса.
- JetBrains (IDEA, WebStorm, GoLand, …) — установите плагин Archlang из маркетплейса плагинов JetBrains.
Оба дают автодополнение имён видов, всплывающие подсказки документации, переход к определению для ссылок между модулями, диагностику валидации и встроенный предпросмотр диаграммы.
Если вашего редактора нет в списке, языковой сервер можно подключить вручную — см. Инструменты → Языковой сервер.
Просмотрщик
Веб-просмотрщик рендерит любой пакет или одиночный файл. Два способа добраться до него:
- Размещённый просмотрщик на
archlang.dev/demo— вставьте файлы, увидите диаграмму. - Встраиваемый просмотрщик — вставьте
<archlang-viewer>в любую HTML-страницу (см. Инструменты → Встраивание просмотрщика).
Расширения редактора имеют встроенную панель предпросмотра, которая перерендеривается на каждое сохранение, так что для локальной работы это обычно подходящий инструмент.
Проверка
Создайте пустой каталог, положите туда один файл hello.arch:
service Hello { team: Demo command Greet}Запустите:
archlang validate .Если вывода нет и команда вышла чисто — вы готовы. Если видите STDLIB_NOT_FOUND или ошибку отсутствующего вида, инструменты пока не знают, что такое service — вашему пакету нужен манифест. Добавим его в следующей главе.
Что дальше
Глава 2: Ваша первая архитектура → — построить маленькую систему, отрендерить её, изменить, посмотреть, как обновляется.