Poczytaj mi Clojure, cz.  9


Kolekcje


Kolekcje to abstrakcyjna klasa struktur danych, służąca do reprezentowania zbiorów elementów o wspólnych cechach bądź wspólnym przeznaczeniu. Umożliwiają one wyrażanie takich zestawów w sposób zgrupowany w pojedynczym obiekcie. W Clojure możemy korzystać z kilku wbudowanych kolekcji, a konkretnie z list, wektorów, map i zbiorów.

Poczytaj mi Clojure, cz.  6


Powiązania i przestrzenie nazw


Powiązania pozwalają identyfikować pamięciowe obiekty, z których korzystamy w programach (nadawać im stałe tożsamości), a przestrzenie nazw umożliwiają zarządzanie widocznością i kapsułkowanie fragmentów kodu źródłowego. W tym odcinku dowiemy się, jak rozumieć te mechanizmy w Clojure i jak ich używać.

Poczytaj mi Clojure, cz.  5


Systemy typów


Typy danych pozwalają klasyfikować wartości pod względem różnych cech i wykształcać relacje między tak powstałymi klasami. Programiście pomaga to definiować operacje przeprowadzane na danych różnych rodzajów, a mechanizmom języka zarządzać pamięcią i wykrywać niektóre rodzaje błędów. W Clojure mamy do czynienia z kilkoma powiązanymi ze sobą systemami typów, które możemy rozszerzać, a wykorzystując ich polimorficzne mechanizmy jesteśmy w stanie abstrahować zarządzanie danymi i budować ujednolicone interfejsy wymiany informacji.

Poczytaj mi Clojure, cz.  3


Podstawowe konstrukcje


Specyficzna składnia dialektów języka Lisp pozwala precyzyjnie określać i rozróżniać podstawowe konstrukcje, dodawać nowe elementy syntaktyczne, a nawet przekształcać kod programu w trakcie jego pracy. Wynika to z zastosowania prostych, jednak przemyślanych sposobów organizowania i reprezentowania kodu źródłowego.

Poczytaj mi Clojure, cz.  1


Lisp


Clojure to funkcyjny język programowania ogólnego przeznaczenia bazujący na modelu Lisp–1. Jego wzorcowa implementacja działa pod kontrolą JVM, ale istnieją też wydania pracujące w innych środowiskach, na przykład popularny ClojureScript zaimplementowany w JavaScripcie. Clojure jest Lispem, który powstał z myślą o przetwarzaniu współbieżnym i korzystaniu z ekosystemu Javy.