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
CSC305 Lecture 03
javiergs
PRO
0
240
Model Pollution
hschwentner
1
190
Web フロントエンドエンジニアに開かれる AI Agent プロダクト開発 - Vercel AI SDK を観察して AI Agent と仲良くなろう! #FEC余熱NIGHT
izumin5210
3
470
Things You Thought You Didn’t Need To Care About That Have a Big Impact On Your Job
hollycummins
0
200
Pull-Requestの内容を1クリックで動作確認可能にするワークフロー
natmark
2
480
Django Ninja による API 開発効率化とリプレースの実践
kashewnuts
0
1.2k
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
5
1.6k
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
200
Introducing ReActionView: A new ActionView-Compatible ERB Engine @ Kaigi on Rails 2025, Tokyo, Japan
marcoroth
3
960
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1.1k
バッチ処理を「状態の記録」から「事実の記録」へ
panda728
PRO
0
130
Six and a half ridiculous things to do with Quarkus
hollycummins
0
140
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
329
39k
4 Signs Your Business is Dying
shpigford
185
22k
GitHub's CSS Performance
jonrohan
1032
460k
Code Reviewing Like a Champion
maltzj
525
40k
Speed Design
sergeychernyshev
32
1.1k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Building Adaptive Systems
keathley
43
2.8k
Agile that works and the tools we love
rasmusluckow
331
21k
Writing Fast Ruby
sferik
629
62k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
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