Poczytaj mi Clojure, cz.  16


Współbieżność: Atomy


Atom to typ referencyjny przeznaczony do obsługi danych przetwarzanych współbieżnie, do których wymagany jest niekoordynowany, synchroniczny dostęp. Możemy dzięki niemu tworzyć współdzielone obiekty wyrażające zmieniające się stany, gdy zależy nam na tym, aby podczas zmiany wartości bieżącej uwzględniona była jej poprzednia wartość, chociaż dopuszczamy drobne zmiany w kolejności operacji, gdy więcej niż jedna aktualizacja zostanie zlecona w podobnym czasie.

Poczytaj mi Clojure, cz.  15


Współbieżność


Wykonywanie współbieżne pozwala spożytkować więcej niż jedną jednostkę obliczeniową komputera podczas wykonywania zadań, które można zrównoleglić. Pomaga też lepiej zarządzać czasem, gdy pewne operacje muszą oczekiwać na obsługę komunikacji międzyprocesowej lub podsystemu wejścia/wyjścia. Clojure proponuje przejrzystą implementację wykonywania współbieżnego, wykorzystującą typy referencyjne i programową pamięć transakcyjną.

Poczytaj mi Clojure, cz.  13


Stan, tożsamość i zmiana


Clojure jest językiem o solidnych fundamentach teoretycznych. W tej części zajmiemy się podstawami koncepcyjnymi tego dialektu Lispu, a dokładniej definicjami stanu, tożsamości, powiązania i wartości. Pozwoli nam to oswoić się z paradygmatem funkcyjnym i zrozumieć dlaczego niektóre oczywiste czynności wymagają przeprowadzania operacji niestosowanych w innych językach programowania.

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.