К основному контенту

Clojure

Удивительно простой для изучения язык семейства 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

Комментарии

Популярные сообщения из этого блога

Кирилица в Arch Linux

После вчерашних обновлений в консоли Arch Linux при выборе русской локали вместо букв печатаются белые квадратики. Очевидно, что по какой-то причине не загружается прописанный в rc.conf шрифт. Временное лекарство от этого: выполнить команду setfont cyr-sun16 . Еще у меня в момент начальной загрузки появляется рябь на экране как от сильных электромагнитных помех в ЭЛТ, хотя у меня ЖК. Может быть это как-то связано.

Сортировка массивов в groovy

Любой массив в java и groovy можно отсортировать статическим методом: Arrays.sort(c); причем это будет очень быстро сто тысяч элементов типа int сортируются за 1 секунду на celeron M 1,8 Mg. Если это массив объектов можно использовать перегруженный метод Arrays.sort(c,comporator);

Arch Linux - руссификация консоли

Вчера, придя с работы, как всегда затеял InstallFest. Уже практически не задумываясь установил свежий арч. И тут заметил что в tty вместо русского - квадратики. Под утро нашел таки сообщение на форме, что в этом виноваты дрова от видео. Там правда речь шла о нвидиа, а у меня ати. Буду пробовать. И еще в lxterminal обратил внимание что сообщения на русском, а то что я вводил на русском потом возвращается системой в виде юникод-символов. Вот такие дела. UPDATE: драйвер не причем. переустановил в консоли(до установки X) по прежнему квадратики вместо букв. неужели придется переключатся на инглиш? Заметил что initscripts скачался c какого-то зеркала не с яндекса. возможно причина в нем.