Clojure Programming
Книга "Clojure Programming" — это исчерпывающее руководство по языку программирования Clojure, созданному для виртуальной машины Java (JVM). Авторы, ведущие эксперты в сообществе Clojure, проводят читателя от основ синтаксиса и REPL до продвинутых концепций функционального программирования, параллелизма и взаимодействия с Java.
Первая часть книги знакомит с базовыми элементами языка: выражения, коллекции, пространства имен, специальные формы. Особое внимание уделяется гомоиконичности — свойству, благодаря которому код на Clojure может обрабатываться как данные, что открывает возможности для метапрограммирования и макросов.
Вторая часть посвящена функциональному программированию: неизменяемым структурам данных, чистым функциям, композиции, а также работе с коллекциями и последовательностями. Рассматриваются вопросы параллелизма и конкурентности с использованием атомов, рефов, агентов и программной транзакционной памяти (STM).
Книга содержит множество практических примеров и упражнений, позволяющих применить полученные знания в реальных проектах. Она будет полезна как новичкам, впервые знакомящимся с функциональной парадигмой, так и опытным разработчикам, желающим освоить Clojure для создания надёжных и масштабируемых приложений.
Издание вышло в 2012 году в издательстве O'Reilly Media и с тех пор считается классическим введением в язык, несмотря на появление более новых материалов.
