Об этом проекте
rontolisp — это подмножество Common Lisp, реализованное на Java, которое предоставляет три различных режима выполнения: интерпретатор с обходом дерева и поддержкой REPL, компилятор JVM, генерирующий байт-код .class, и компилятор WASM, ориентированный на wasm-GC (с поддержкой WASI Preview 1 и WASI 0.3 Component Model).
Проект разработан с минимальным количеством зависимостей; генераторы байт-кода JVM и WASM написаны с нуля без использования внешних библиотек генерации кода. Он включает CLI для интерактивного использования, форматировщик исходного кода и тест-раннер для наборов rove.
Ключевые особенности включают:
- Поддержка нескольких бэкендов: запуск одного и того же исходного кода через интерпретацию, JVM или WASM.
- Браузерная площадка: сборка WebAssembly позволяет пользователям вычислять Lisp и компилировать файлы .class или .wasm на стороне клиента.
- Инструментарий: интегрированное форматирование исходного кода и комплексный сайт с документацией и интерактивными примерами.
- Варианты сборки: поддержка стандартных сборок JAR и генерация нативных исполняемых файлов через GraalVM.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.