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
"Simple Made Easy" Made Easy
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Kent OHASHI
July 29, 2019
Programming
270
0
Share
"Simple Made Easy" Made Easy
Rich Hickeyの有名なプレゼン"Simple Made Easy"を簡単に解説(*> ᴗ •*)ゞ
Clojureの基本的な設計思想を理解しよう!
Kent OHASHI
July 29, 2019
More Decks by Kent OHASHI
See All by Kent OHASHI
Property-Based Testing with test.check and clojure.spec
lagenorhynque
0
29
🐬の推し本紹介2025: 『コーディングを支える技術 ――成り立ちから学ぶプログラミング作法』
lagenorhynque
0
93
KotlinでミニマルなResult実装による関数型エラーハンドリング
lagenorhynque
0
43
Functional Calisthenics in Kotlin: Kotlinで「関数型エクササイズ」を実践しよう
lagenorhynque
1
350
関数型言語テイスティング: Haskell, Scala, Clojure, Elixirを比べて味わう関数型プログラミングの旨さ
lagenorhynque
1
190
純LISPから考える関数型言語のプリミティブ: Clojure, Elixir, Haskell, Scala
lagenorhynque
1
220
From Scala/Clojure to Kotlin
lagenorhynque
0
97
TDD with RDD: Clojure/LispのREPLで変わる開発体験
lagenorhynque
0
120
🐬の推し本紹介2024: 『脱・日本語なまり 英語(+α)実践音声学』
lagenorhynque
1
160
Other Decks in Programming
See All in Programming
Strategy for Finding a Problem for OSS: With Real Examples
kibitan
0
130
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
200
飯MCP
yusukebe
0
480
ファインチューニングせずメインコンペを解く方法
pokutuna
0
260
最初からAWS CDKで技術検証してもいいんじゃない?
akihisaikeda
4
180
見せてもらおうか、 OpenSearchの性能とやらを!
shunta27
1
170
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
220
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.3k
[PHPerKaigi 2026]PHPerKaigi2025の企画CodeGolfが最高すぎて社内で内製して半年運営して得た内製と運営の知見
ikezoemakoto
0
320
AI活用のコスパを最大化する方法
ochtum
0
370
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
5.6k
iOS機能開発のAI環境と起きた変化
ryunakayama
0
140
Featured
See All Featured
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
280
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
140
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
4 Signs Your Business is Dying
shpigford
187
22k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
ラッコキーワード サービス紹介資料
rakko
1
2.9M
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
The browser strikes back
jonoalderson
0
880
Docker and Python
trallard
47
3.8k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Transcript
"Simple Made Easy" Made Easy "Simple Made Easy" Made Easy
Clojure Clojure
lagénorhynque lagénorhynque (defprofile lagénorhynque :id @lagenorhynque :reading "/laʒenɔʁɛ̃ k/" :aliases
[" "] :languages [Clojure Haskell English français] :interests [programming language-learning law mathematics] :commits ["github.com/lagenorhynque/duct.module.pedestal"] :contributes ["github.com/japan-clojurians/clojure-site-ja"])
Clojure Clojure (*> ᴗ •*) (*> ᴗ •*) clojure tips
? 7 7
1. "simple" "easy" 2. Simple Made Easy 3. "simple" "easy"
4. "simple" "easy" 5. "simple" 6. "simple" 7. Clojure "simple"
"simple" "easy" "simple" "easy"
Clojure "simple" Clojure "simple" "easy" Clojure "simple"
Simple Made Easy Simple Made Easy
( ( ) ) Clojure "simple" ( Clojurian ) cf.
( ) Simple Made Easy Simple Made Easy Strange Loop 2011 Strange Loop 2011 Rich Hickey Simplicity Matters Rails Conf 2012 | eed3si9n
"Simple Made Easy" "Simple Made Easy" simple "simple" "easy" "simple"
"easy" ? Word Power Made Easy
"simple" "easy" "simple" "easy"
"simple" "simple" < simplex (= sim + plex) simplex :
/ : (= com + plex) : simple complex
"easy" "easy" (= + y) < aise/eise < adjacens adjacens
(cf. adjacent) : ( ) ( ) ( ) / : : easy easy ease hard
"simple" "easy" "simple" "easy"
"simple" "easy" "simple" "easy" simple/complex, easy/hard 2 easy simple !
complex simple Rich Hickey simple or complex simple or easy
"easy but complex" vs "simple but hard" "easy but complex"
vs "simple but hard" easy complex (= not simple) easy complex complex simple hard (= not easy) hard simple simple
"simple" "simple"
(complexity)
"simple" "simple" "simple" /
"simple" "simple"
"simple" "complex" ( ) "simple" (abstract) (draw away) who, what,
when, where, why, how "simple" (simplify) complect abstract
Clojure "simple" Clojure "simple"
;; Common Lisp: "complect" (defun fizzbuzz (n) (let ((fizzp (zerop
(mod n 3))) (buzzp (zerop (mod n 5)))) (cond ((and fizzp buzzp) "Fizz Buzz") (buzzp "Buzz") (fizzp "Fizz") (t n)))) ;; Clojure: "simple" (defn fizzbuzz [n] (let [fizz? (zero? (mod n 3)) buzz? (zero? (mod n 5))] (cond (and fizz? buzz?) "Fizz Buzz" buzz? "Buzz" fizz? "Fizz" :else n)))
"complect" ( ) "simple"
"complect" atom, ref, agent "simple"
"complect" who ( ) what ( ) "complect" "simple"
what ( ) who ( ) "complect" "simple" e.g. core.async
"simple" "simple" Simple Made Easy / ! Clojure !
Further Reading Further Reading Simple Made Easy matthiasn/talk-transcripts > Hickey_Rich/SimpleMadeEasy.md
Clojure Simple Made Easy - Simplicity Matters | eed3si9n Clojure Design Decisions Clojure - Clojure core.async Channels