LeshaInc 625 Опубликовано: 18 июня, 2018 (изменено) На этом. Язык компилируется в Lua (поддерживаются версии 5.1, 5.2, 5.3 и даже возможно JIT). Предупреждаю — этот язык является диалектом Lisp. Если ваш дед не оставил в кладовке пачку скобок, возможно у вас не получится на нем писать. Из фич: pattern matching, прикольные циклы, фреймворк для тестов, красивые сообщения об ошибках. Hello world на Urn: (print! "Hello, world!") Работает также арифметика в стиле лиспа: (+ 2 (* 4 5)) Можно создавать функции: (defun times-two (x) (* x 2)) (print! (times-two 2)) (print! (times-two 3)) и макросы: (defmacro show (x) (print! "Compile-time" (pretty x)) `(progn (print! "Run-time" ,(pretty x)) (print! "Value" ,x))) ------------------------------------ > (show (+ 2 3)) Compile-time (+ 2 3) Run-time (+ 2 3) Value 5 Можно использовать библиотеки из Lua: (define bit32 :hidden (require "bit32")) (define & (.> bit32 :band)) (define ~ (.> bit32 :bnot)) и таблицы из Lua: > { :foo 1 . :bar 2 } out = {"bar" 2 "foo" 1} Компилятор языка написан на Lua UPD: компилятор написан на Urn и скомпилирован в Lua; предлагаю энтузиастам поиграться с ним в OpenComputers и сделать отчет. А я пойду дальше употреблять вещества. Изменено 18 июня, 2018 пользователем LeshaInc 8 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Alex 4 683 Опубликовано: 18 июня, 2018 А я пойду дальше употреблять вещества. шапочку из фольги не забудь надеть=) п.с. где ты откапываешь эти эксклюзивы, всякие расты, лиспы, урнлы? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
MaXiMAxE 0 Опубликовано: 9 июля, 2018 (изменено) Что-то данный язык больно схож с Обратной польской записью, только знаки стоят с другой стороны Изменено 9 июля, 2018 пользователем Alex Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах