Repolode
kulics

kulics/koral

Экспериментальный компилируемый язык программирования для кода, созданного ИИ и проверяемого людьми: явный синтаксис, без сборщика мусора, компиляция в C.

Звёзды
418
Форки
27
Открытые issues
0
Последний коммит
22 часа назад

Что это?

Koral — компилируемый язык программирования, разработанный с учётом того, что сейчас значительную часть кода создают ИИ-агенты, а читать его всё равно приходится людям. Синтаксис сводит к минимуму возможности для ошибок: каждый оператор завершается явной точкой с запятой, изменяемость задаётся один раз на уровне типа, у имени на уровне модуля только один владелец, а обработка ошибок записывается прямо в выражениях, а не с помощью `throw`, `try` или `catch`.

В языке нет ни сборщика мусора, ни ручного `free`. Номинальные типы объявляются в одной из двух форм: неизменяемый `type` или совместно используемый `type mutable`; от этого выбора зависит управление памятью. Компилятор генерирует C, что, по описанию проекта, рассчитано на широкую совместимость с платформами. В языке есть алгебраические типы данных, исчерпывающее сопоставление с образцом, обобщённые типы с ограничениями по trait, объекты trait, C FFI и `defer`.

Проект помечен как экспериментальный и пока не готов к промышленному использованию. Его самохостящийся компилятор написан на самом Koral и собран с помощью замороженного эталонного компилятора на Swift.

Ключевые возможности

  • 01Операторы завершаются явными точками с запятой, а для импортов используется единая форма `using`.
  • 02Память управляется без сборщика мусора и ручного `free`; подход определяется типами `type` и `type mutable`.
  • 03Управляющие конструкции, такие как `if`, `when`, `while` и `for`, являются выражениями и поддерживают исчерпывающее сопоставление с образцом.
  • 04Ошибки обрабатываются непосредственно в выражениях с помощью `or else`, `and then` и `or return`.
  • 05Компилирует в C и предоставляет C FFI с сырыми указателями и `defer`.

Сценарии использования

  • Изучение языка, разработанного для упрощения проверки кода, созданного ИИ.
  • Изучение устройства компиляторов, в том числе самохостящегося компилятора и бэкенда для C.
  • Эксперименты с управлением памятью без сборщика мусора.

Быстрый старт

  1. 1

    Клонируйте репозиторий

    git clone https://github.com/kulics/koral.git
  2. 2

    Соберите зафиксированный эталонный компилятор Swift (требуется toolchain Swift)

    swift build -c release --package-path compiler-reference
  3. 3

    Соберите самодостаточный компилятор с помощью эталонного компилятора

    compiler-reference/.build/release/koralc build --package-config compiler/koral.json --target-module koralc -o bin/compiler

Что важно знать

  • Проект находится на экспериментальной стадии и пока не готов к использованию в production.
  • Для сборки требуются toolchain Swift, clang и Git.
  • Компиляция выполняется через C, поэтому для создания бинарных файлов необходим toolchain C.

В подборках

Темы

Частые вопросы

Что такое koral?
Экспериментальный компилируемый язык программирования для кода, созданного ИИ и проверяемого людьми: явный синтаксис, без сборщика мусора, компиляция в C. Koral — компилируемый язык программирования, разработанный с учётом того, что сейчас значительную часть кода создают ИИ-агенты, а читать его всё равно приходится людям. Синтаксис сводит к минимуму возможности для ошибок: каждый оператор завершается явной точкой с запятой, изменяемость задаётся один раз на уровне типа, у имени на уровне модуля только один владелец, а обработка ошибок записывается прямо в выражениях, а не с помощью `throw`, `try` или `catch`.
koral можно использовать бесплатно? Какая у него лицензия?
koral распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
koral всё ещё поддерживается?
Активно поддерживается. Последний коммит в koral — 6 нояб. 2026 г..
Для чего можно использовать koral?
Изучение языка, разработанного для упрощения проверки кода, созданного ИИ. Изучение устройства компиляторов, в том числе самохостящегося компилятора и бэкенда для C. Эксперименты с управлением памятью без сборщика мусора.
Как установить koral?
Клонируйте репозиторий: git clone https://github.com/kulics/koral.git Соберите зафиксированный эталонный компилятор Swift (требуется toolchain Swift): swift build -c release --package-path compiler-reference Соберите самодостаточный компилятор с помощью эталонного компилятора: compiler-reference/.build/release/koralc build --package-config compiler/koral.json --target-module koralc -o bin/compiler
Где скачать koral?
Исходный код и инструкции по установке — на GitHub: https://github.com/kulics/koral

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Odin — универсальный язык системного программирования с ориентацией на данные, встроенной стандартной библиотекой и позиционированием как альтернатива C.

12,3 тыс.+13 за неделю1,2 тыс.OdinZlibОбновлён 22 часа назад