Об этом проекте
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 для списков (::) и оператор конвейера (|>).
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.