Comments 9
Ожидал что интерпретатор Ouroboros написан на Ouroboros. Разочарование.
По итогу синтаксиса больше чем в FORTH
Как функцию определить?
Есть сходства с языком Rebol, сейчас Red. У языка было практическое приминение: создание компактных приложений на linux и windows с одинаковым интерфейсом через скриптинг.
Начали за здравие, кончили за упокой. И язык это, оказывается, а эксперимент.
Ур в уроборосе - это хвост.
Можно ли создать язык программирования, в котором нет синтаксиса?
Да. Например, Brainfuck.
Ничего не понятно но очень интересно
Написана глупость. С точки зрения парсера можно было и меньше синтаксиса - функции (в том числе изменяющие среду интерпретатора) и строки. Но по факту семантически синтаксис нужен как минимум:
Связывание имени (JS: const a=expr)
Создание ссылочной ячейки (let v= как минимум, LISP: cons)
Запись в ссылочную ячейку.
Создание отложенного вычисления (хотя бы лямбда)
Арифметика и условный оператор
Определение типов данных и доступ к элементам (паттерн матчинг по сути).
Операторы видимости имён (глобальные объявления как минимум, классы, модули)
Что почти наверняка необходимо:
Массивы и операции над ними/ циклы.
В данном языке синтаксис определения функций (сомневаюсь что есть аналог const f = x => expr)
Это всё непосредственно часть языка. Конечно, императивную часть можно отбросить, оставив аналог Хаскеля, но это не тот случай (автор бы указал что это чистый функциональный язык с монадами для доступа к "миру" :) )
Ouroboros — язык программирования почти без синтаксиса