Начало работы

Первая программа

Установите Топаз, проверьте и запустите первый файл, затем прочитайте сообщение об ошибке и исправьте ошибку типа.

Создайте файл .tpz, проверьте и запустите его. Затем исправьте ошибку типа в месте, указанном в сообщении.

Подготовьте локальный терминал и текстовый редактор. Откройте пустую рабочую папку и сохраняйте файлы ниже в ней. Выбрать начальную точку поможет учебный маршрут.

Установите Топаз

Выберите один способ установки для своей системы.

В macOS или Linux выполните следующую команду.

BASH
curl -fsSL https://topaz.ooo/install.sh | sh

В Windows используйте PowerShell.

POWERSHELL
irm https://topaz.ooo/install.ps1 | iex

Если Node уже установлен, можно воспользоваться npm.

BASH
npm install -g topaz-lang

Каждый способ загружает сжатую программу для вашей системы. Установщик сверяет загруженный файл и распакованную программу с контрольными суммами SHA-256, опубликованными вместе с выпуском. Для Linux x86_64 загрузка занимает от 33 до 47 МБ, а установленная программа topaz занимает 122 МБ.

После установки откройте новый терминал и убедитесь, что он находит команду Топаза.

BASH
topaz version
Вывод
Topaz 5.20.4

После слова Topaz выводится номер установленной версии. Текущий выпуск печатает строку выше. Если команда не найдена, откройте терминал заново и проверьте, есть ли папка установки в PATH.

Установленной команды Топаза достаточно для проверки и запуска этого файла. Для нативной сборки также нужны Rust и Cargo для целевой платформы. Вы воспользуетесь ими в разделе Первое приложение.

Напишите и запустите учебный план

Сохраните этот код в файле first-program.tpz в рабочей папке.

TOPAZ
let тема = "Topaz basics"
let минуты: int = 25
print("{тема}: {минуты} minutes")

В этой папке проверьте файл и запустите его.

BASH
topaz check first-program.tpz
topaz run first-program.tpz

check сообщает о проверке типов и имён, не выполняя файл.

Вывод
first-program.tpz: types-ok (1 module)
first-program.tpz: resolve-ok (1 module)

run проверяет файл, а затем печатает результат.

Вывод
Topaz basics: 25 minutes

Первый let даёт имя строке, поэтому средство проверки выводит её тип. Вторая строка задаёт для минуты целочисленный тип int. print подставляет значения из {...} в вывод.

Прочитайте и исправьте ошибку

Создайте второй файл first-program-error.tpz с намеренной ошибкой типа.

let тема = "Topaz basics"
let минуты: int = "25"
print("{тема}: {минуты} minutes")

Проверьте второй файл.

BASH
topaz check first-program-error.tpz

Средство проверки завершается с ошибкой. Оно показывает ожидаемый тип, фактический тип и место исправления.

Вывод
error[TPZ5001]: expected `int`, found `string`
 --> first-program-error.tpz:2:19
  |
2 | let минуты: int = "25"
  |                   ^^^^

first-program-error.tpz: 1 type diagnostic

В файле first-program-error.tpz замените выделенное "25" на 25. Кавычки делали это значение строкой. Теперь topaz check first-program-error.tpz завершается успешно, а topaz run first-program-error.tpz печатает Topaz basics: 25 minutes.

Выберите check или run

Используйте topaz check, чтобы находить ошибки типов и имён при редактировании без запуска программы. Используйте topaz run для тех же проверок с последующим выполнением. Проверяйте вывод тестами, чтобы убедиться в правильности логики.

Попробуйте

Замените тема на "Functions", а минуты на 30. Что выведет программа?

Показать ответ

Она выведет Functions: 30 minutes. Значения по-прежнему имеют типы string и int, поэтому проходят проверку.

Настройте редактор

В VS Code или редакторе с поддержкой Open VSX установите официальное расширение Топаза из Visual Studio Marketplace или Open VSX Registry. Оно распознаёт файлы .tpz, добавляет значок Топаза и подсвечивает синтаксис.

Расширение запускает установленный topaz lsp, чтобы показывать ошибки в редакторе. Компилятор устанавливается отдельно. Убедитесь, что редактор находит его через PATH, или задайте путь в topaz.executablePath. Можно также использовать topaz check в терминале.

Продолжайте, когда программа работает

Вы готовы двигаться дальше, когда исправленный файл проходит topaz check и выводит ожидаемую строку через topaz run.

Переходите к разделу Значения и функции. Держите Краткий обзор синтаксиса под рукой для поиска нужной записи.