Удивительно простой для изучения язык семейства LISP, автор языка Рич Хикки провел фундаментальные исследования проблем программирования и сфокусировал свой язык на их решении. В результате язык получился простым и выразительным. Тем кто хочет начать изучать LISP, но не решается, предлагаю начать с clojure.
Для начала установите любую JVM(рекомендую graalVM от Oracle).
пропишите путь к java(exe) в переменную PATH.
Скачайте lein.bat (Windows) и положите его в путь указанный в PATH(например в jdk\bin). в ubuntu: sudo apt install leiningen.
После этого откройте в терминале любой каталог и выполните команду
lein new app firstApp
если все было выполнено правильно у вас появится каталог firstApp
перейдите в каталог
cd firstApp
и выполните приложение:
lein run
программа напечатает
HEllo, world!
далее запустите REPL
lein repl
появится приглашение после которого можно вводить и выполнять код clojure, например:
(+ 1 1) => 2
((fn [e] println e) "Hello, world!") =>
Hello, world!
nil
Обратите внимание на замечательную особенность Clojure - первым в скобках всегда идет функция а затем аргументы, т.к. это функциональный язык нужно помнить что все есть функция, да такие привычные вещи как условные конструкции:
(if true 1 2) => 1
(or (nil? 1) 1 2) => 2
Для начала установите любую JVM(рекомендую graalVM от Oracle).
пропишите путь к java(exe) в переменную PATH.
Скачайте lein.bat (Windows) и положите его в путь указанный в PATH(например в jdk\bin). в ubuntu: sudo apt install leiningen.
После этого откройте в терминале любой каталог и выполните команду
lein new app firstApp
если все было выполнено правильно у вас появится каталог firstApp
перейдите в каталог
cd firstApp
и выполните приложение:
lein run
программа напечатает
HEllo, world!
далее запустите REPL
lein repl
появится приглашение после которого можно вводить и выполнять код clojure, например:
(+ 1 1) => 2
((fn [e] println e) "Hello, world!") =>
Hello, world!
nil
Обратите внимание на замечательную особенность Clojure - первым в скобках всегда идет функция а затем аргументы, т.к. это функциональный язык нужно помнить что все есть функция, да такие привычные вещи как условные конструкции:
(if true 1 2) => 1
(or (nil? 1) 1 2) => 2
Комментарии
Отправить комментарий