Clojure
Common Lisp
系の言語
Lisp
の処理系
2007年
開発者は
Rich Hickey
マルチスレッドプログラミング
JVM
上で動作し、Javaとの相互利用が可能
他のLispほど括弧だらけになりづらい
[]
や
{}
を使える
不要な括弧が排除されている
e.g.
cond
関数型プログラミング
言語
純粋関数, mutable
REPL
起動
$ clojure
Clojureの歴史
https://clojure.org/about/history
書籍
Clojure Applied
https://pragprog.com/titles/vmclojeco/clojure-applied/
『Out of the Tar Pit』
という論文に基づいて、状態とふるまいを分離するように言語設計されてる
Epochal Time Model
https://www.geidai.ac.jp/~marui/clojure/rationale/
こっち
が公式だが、訳が終わってる
clojure.spec
状態
Clojureのref
協調的、同期的な変更の管理
Clojureのatom
非協調的、同期的な変更の管理
Clojureのagent
非同期的な変更の管理
https://japan-clojurians.github.io/clojure-site-ja/reference/agents
https://gist.github.com/kohyama/6076544#agent
Clojureのvar
thread localな状態を管理
ClojureのReader Macro
Clojureのsymbol
/mrsekut-b/シンボルの雑な説明
Clojureのkeyword
Clojureのhash map
Clojureのdo
Clojureを使っている企業
http://www.joyofclojure.com/
https://qiita.com/kawasima/items/c695e2f4ee079a6debf5
https://qiita.com/dexia/items/426e4d71a0f4858c2c55#clojure
https://en.wikipedia.org/wiki/Clojure
https://www.geidai.ac.jp/~marui/clojure/rationale/
https://www.slideshare.net/KentOhashi/everydaylifewithclojurespec
https://www.slideshare.net/kawasima/tis-29266467
#プログラミング言語