15. Immutable
すべてがイミュータブル
user => (def a {:name "kawasima":age 39})
#'user/a
user => (def b (assoc a :age 40))
#'user/b
user => a
{:name "kawasima" :age 39}
つまりコレクションに対する破壊的操作はできない
http://gotocon.com/dl/goto-cph-2012/slides/value-of-values.pdf
18. Epochal time model
person person
:age 39
:name "kawasima"
function
このモデルは、Append-onlyデータベースのDatomicでも採用されています。
http://www.datomic.com/
Identity
Pure functions
:age 40
:name "kawasima"
加齢
Values
state state
31. Get started
Clojure Java
依存性 leiningen Maven
IDE Lighttable
Emacs + cider
Intellij IDEA
NetBeans
LightTable: http://www.lighttable.com
leiningen: http://leiningen.org/