Об этом проекте

YALCE / YLC (Yet Another Live-Coding Environment) — это функциональный язык программирования, поставляемый с библиотеками для синтеза звука и графики OpenGL. Проект заявляет своей целью быть небольшим, простым и производительным, с минимальным набором возможностей и бесшовной совместимостью с C. Ключевые возможности, перечисленные проектом: - Функциональное программирование с синтаксисом в стиле OCaml и функциями первого класса - Вывод типов через систему типов Хиндли — Милнера с полиморфизмом - JIT-компиляция через LLVM в нативные цели - Интерактивный REPL для разработки и live coding - Сопоставление с образцом с алгебраическими типами данных - Корутины для генераторов и асинхронной итерации Варианты установки включают формулу Homebrew для macOS (brew install crawdaddie/yalce/yalce) или сборку из исходного кода: клонировать репозиторий, запустить ./setup.sh, запустить make, затем создать символическую ссылку на собранный бинарный файл ylc в каталоге из вашего PATH. Документация организована в разделы: начало работы, основные концепции, примеры и справочник по языку. Примеры в README включают реализацию Фибоначчи с сопоставлением с образцом, функции первого класса, используемые для написания вспомогательных функций обращения и отображения списка, и небольшой модульный тест, сравнивающий отображённый список с ожидаемым результатом. Синтаксис использует let-привязки, лямбды fn, выражения match с ветвями |, cons для списков (::) и оператор конвейера (|>).