2.1 KiB
2.1 KiB
FromZero / Language
FromZero/Language - пакет из JIT-компилятора и виртуальной машины для языка FZL.
Текущие возможности
На данный момент язык имеет:
- Встроенную функцию
printlineдля вывода аргумента в stdout - Строковый и числовой литералы
- Арифметические операции: сложение, вычитание, умножение, деление, модуло, возведение в степень
Расширения файлов
Стандартными для языка являются два расширения файлов:
.fzs- исходный код.fzb- скомпилированный бинарный файл
Инструкции по сборке
- Склонировать проект:
git clone https://git.samsonium.dev/samsonium/fz-lang.git - Собрать проект:
make build
После этого в корне появится директория "build". В ней будут лежать два скомпилированных бинарных файла:
fzc- компиляторfz- виртуальная машина
Оба бинарных файла предоставляют справку по использованию при запуске с флагом --help (или -h).
Гайдлайн по разработке
Желательно иметь редактор кода, поддерживающий Clang LSP, так как в проекте есть готовые настройки для
форматтера в виде файла .clang-format.
Для дебаггинга есть два таргета в CMake: build-c для компилятора и build-vm для виртуальной машины.
Оба таргета позволяют указать переменную с путём файла. Например, так:
$ make debug-c FILE=exl/hw.fzs