В Clojure двоеточие создает нечто, называемое ключевым словом или ключом:
user=> (type :xyz)
clojure.lang.Keyword
Ключи используются в картах, поскольку их легко проверять на равенство и преобразовывать в строки.Вы можете видеть, что позже в том же файле снова используется :fin
для проверки на равенство:
(= :fin (do
(compare-and-set! __ __ __)
@atomic-clock)))