Skip to content

Ivana-/Liscript-Python

Repository files navigation

Build Status Build Status

Liscript-Python

Реализация интерпретатора Liscript на Python, консольный REPL

Запуск: python3 repl.py , автоматически подгружается стандартная библиотека

Пример интерфейса и простейших команд, детальнее в краткое описание языка:

t >>> def x 1
OK
t >>> + x 4
5
t >>> cons 1 2 3 4 5
(1 2 3 4 5)
t >>> map (lambda (i) * 10 i) (list-from-to 1 5)
(10 20 30 40 50)

Префикс t в подсказке ввода сигнализирует включенный режим TCO - оптимизации хвостовых вызовов. Режим без оптимизации - префикс n

Файлы с расширением .liscript - тескты скриптов для загрузки в интерпретатор: :l demo1.liscript

REPL воспринимает ввод либо как команды (если введенная строка начинается с символа :), либо как выражение для вычисления (во всех остальных случаях)

Команды РЕПЛа:
  • :q - выход
  • :l filename - загрузить файл скрипта на выполнение
  • :tco - переключение флага TCO (оптимизация хвостовой рекурсии)
  • :stat - переключение флага вывода статистики (глубина стека и количество вызовов эвал-функции)
  • : - повтор последней команды
Ссылки:

About

Liscript command line REPL on Python

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages