Перейти к содержимому

1. Установка

Для работы с ArchLang нужны три вещи:

  1. CLI — для валидации и форматирования файлов.
  2. Редактор с подключённым языковым сервером — для автодополнения и диагностики.
  3. Просмотрщик — чтобы видеть диаграммы, в которые рендерятся ваши файлы.

Эта глава ставит все три. Если они у вас уже есть — пробегитесь и переходите к Главе 2.

Окно терминала
npm install -g @archlang/cli

Это добавляет archlang в PATH. Вот подкоманды, к которым вы будете прибегать в первую очередь (полный список — в Главе 21):

Окно терминала
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.

Оба дают автодополнение имён типов, всплывающие подсказки документации, переход к определению для ссылок между модулями, диагностику валидации и встроенный предпросмотр диаграммы.

Если вашего редактора нет в списке, языковой сервер можно подключить вручную — см. Инструменты → Языковой сервер.

Веб-просмотрщик рендерит любой пакет или одиночный файл. Два способа добраться до него:

Расширения редактора имеют встроенную панель предпросмотра, которая перерендеривается на каждое сохранение, так что для локальной работы это обычно подходящий инструмент.

Создайте пустой каталог, положите туда один файл hello.arch:

service Hello {
aspect team: "Demo"
rest_create greet
}

Запустите:

Окно терминала
archlang validate .

Если вывода нет и команда вышла чисто — вы готовы. Если видите STDLIB_NOT_FOUND или ошибку отсутствующего типа, инструменты пока не знают, что такое service — вашему пакету нужен манифест. Добавим его в следующей главе.

Глава 2: Ваша первая архитектура → — построить маленькую систему, отрендерить её, изменить, посмотреть, как обновляется.