Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
本の紹介: Clojure Programming
Search
Takahiro Noda
April 22, 2012
Programming
4
590
本の紹介: Clojure Programming
Kyoto.clj #1 発表資料。2012年4月22日。オライリーの新刊(発表当時)Clojure 本「Clojure Programming」がよい教科書であることを述べる。
Takahiro Noda
April 22, 2012
Tweet
Share
More Decks by Takahiro Noda
See All by Takahiro Noda
Open Source Data Analysis Toolbox
tnoda
0
77
Clojure for Non-Clojurians
tnoda
0
220
Yet another introduction to core.async
tnoda
2
290
Other Decks in Programming
See All in Programming
ALL CODE BASE ARE BELONG TO STUDY
uzulla
29
6.9k
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
0
360
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
250
Amazon ECS Managed Instances が リリースされた!キャッチアップしよう!! / Let's catch up Amazon ECS Managed Instances
cocoeyes02
0
120
CSC305 Lecture 13
javiergs
PRO
0
340
Migration to Signals, Resource API, and NgRx Signal Store
manfredsteyer
PRO
0
140
外接に惑わされない自システムの処理時間SLIをOpenTelemetryで実現した話
kotaro7750
0
150
Towards Transactional Buffering of CDC Events @ Flink Forward 2025 Barcelona Spain
hpgrahsl
0
120
Blazing Fast UI Development with Compose Hot Reload (Bangladesh KUG, October 2025)
zsmb
2
440
HTTPじゃ遅すぎる! SwitchBotを自作ハブで動かして学ぶBLE通信
occhi
0
110
Researchlyの開発で参考にしたデザイン
adsholoko
0
100
Software Architecture
hschwentner
6
2.4k
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Unsuck your backbone
ammeep
671
58k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
Facilitating Awesome Meetings
lara
57
6.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
Faster Mobile Websites
deanohume
310
31k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
192
56k
Mobile First: as difficult as doing things right
swwweet
225
10k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Transcript
ຊͷհ: Clojure Programming @tnoda_ 2012-04-22 #kyotoclj #1 1 Sunday, April
22, 2012
Clojure Programming • Chas Emetic • Brian Carper • Christophe
Grand • Oreilly & Associates Inc •2012/4/19 •ˇ3,456 ʢAmazon.co.jp ใʣ 2 Sunday, April 22, 2012
• Α͍ڭՊॻͱ? • “Clojure Programming” Α͍ڭՊॻͳͷ͔? 3 Sunday, April 22,
2012
• ͕ࣝߏԽ͞Εɺؙ҉هͰͳ͘ཧղʹͭ ͳ͕ΔΑ͏ͳͷ • ߏԽͱ? • ͕ࣝଓ͞Ε͍ͯΔ͜ͱ • ֊Խ •
ରൺత • ๏ଇతࣝ 4 Sunday, April 22, 2012
ࠓͷࣗ ࠓͷࣗ ԕ֮͗ͯ͑͢ΒΕͳ͍ ࣝΛͭͳ͙ͱཧղʹͳΔ 5 Sunday, April 22, 2012
ྫ: ΠϯσΟΞϯͱॅډ ւ؛ ΧϦϑΥϧχΞ ฏݪ ׯ͠ϨϯΨͷՈ ςϯτ ਿͷ൘ࡐͰͰ͖ͨ ࣼΊࠜͷՈ 6
Sunday, April 22, 2012
: ΠϯσΟΞϯͱॅډ ւ؛ ΧϦϑΥϧχΞ ฏݪ ׯ͠ϨϯΨͷՈ ςϯτ ਿͷ൘ࡐͰͰ͖ͨ ࣼΊࠜͷՈ 7
Sunday, April 22, 2012
ΧϦϑΥϧχΞͱׯϨϯΨΛଓ ΧϦϑΥϧχΞ ׯ͠ϨϯΨͷՈ ॅډखۙͳࡐྉͰ࡞ΒΕΔ ॅډؾީʹࠨӈ͞ΕΔ Ӎগͳ͍ ҭͨͳ͍ 8 Sunday, April
22, 2012
: ΠϯσΟΞϯͱॅډ ւ؛ ΧϦϑΥϧχΞ ฏݪ ׯ͠ϨϯΨͷՈ ςϯτ ਿͷ൘ࡐͰͰ͖ͨ ࣼΊࠜͷՈ ॅډखۙͳࡐྉͰ࡞ΒΕΔ
ॅډؾީʹࠨӈ͞ΕΔ 9 Sunday, April 22, 2012
ࢀߟจݙ • ྛࠀ • ؒҧ͍ͩΒ͚ͷֶश • ৽༵ࣾ • 1994 10
Sunday, April 22, 2012
Α͍ڭՊॻ·ͱΊ • ͕ࣝฒͯ͋Δ͚ͩͰͩΊ • ଓͯ͠ɺཧղʹͯ͋͛͠ͳ͍ͱ͍͚ͳ͍ 11 Sunday, April 22, 2012
“Clojure Programming” Α͍ڭՊॻ͔? 12 Sunday, April 22, 2012
ྫ: defn (defn name doc-string? attr-map? [params*] body) ؔΛఆٛ͢Δʹ defn
Λ͍·͢: 13 Sunday, April 22, 2012
֊Խ defn def fn do let Lexical Scoping Destructuring Sequential
Destructuring Map Destructuring Symbol Namespace 14 Sunday, April 22, 2012
ରൺత map defrecord comp ->> transient persistent sequence iterator 15
Sunday, April 22, 2012
๏ଇతࣝ • Howto, Tips ͕ॆ࣮ → ͳͥ? • Map ͱ
defrecord ͲͪΒΛ͏͖͔ • Vector ͲΜͳͱ͖ʹ͏͔ • Lazy seq Λ࡞Δͱ͖ʹ Pure Function Ͱͳ ͚ΕͳΒͳ͍ͷͳ͔ͥ? 16 Sunday, April 22, 2012
ޮతʹֶशͰ͖Δ • ͕ࣝଓ͞Ε͍ͯΔ • ֊Խɾରൺత • ๏ଇతࣝ ؙ҉ه͔Βཧղ 17 Sunday,
April 22, 2012
લఏͱ͢Δࣝ Java ˕ʢඞਢʣ Ruby or Python ˚ʢબʣ Lisp ºʢෆཁʣ Functional
Programming ºʢෆཁʣ 18 Sunday, April 22, 2012
ࢀߟ Java ˕ Ruby or Python º Lisp ˓ Functional
Programming ˓ 19 Sunday, April 22, 2012
·ͱΊ • Α͍ڭՊॻ? • ͕ࣝଓɾߏԽ͞ΕɺཧղΛॿ͚Δ • લఏ͕ࣝࣗʹ߹͍ͬͯΔ • “Clojure Programming”
• Α͘ߟ͑ΒΕͨɺΑ͍ڭՊॻ • Lisp, Functional Programming ͷܦݧ͕ͳ ͍ Ruby ϓϩάϥϚͰಡΊΔ • Functional Programming ͷೖʹͳΔ 20 Sunday, April 22, 2012
͓ΘΓʹ • Clojure ίʔυΛॻ͘લʹษڧ͢Δ͜ͱ͕ ଟ͍Ͱ͢ɻ • ʢRuby ͔ΒདྷͨϓϩάϥϚʹͱͬͯʣ • “Clojure
Programming” ɺClojure ͷࣝΛ ಄ʹ٧ΊࠐΉͷʹ࠷దͳڭՊॻͰ͢ɻ 21 Sunday, April 22, 2012