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
Recap Pointfree Vol. 1~3
Search
freddi(Yuki Aki)
October 25, 2020
Programming
910
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Recap Pointfree Vol. 1~3
https://gist.github.com/freddi-kit/112b3d13c6660339ddc85bd05ffc3c2b
に Vol 3 で話す予定だったものあり
freddi(Yuki Aki)
October 25, 2020
More Decks by freddi(Yuki Aki)
See All by freddi(Yuki Aki)
輝け俺のViewController 〜海外iOSカンファレンス登壇編〜
freddi
4
410
Deep Dive into "any" and "some"
freddi
3
1.7k
挑戦!ISUCON de Server-side Swift 〜タイムゾーンには気をつけろ〜
freddi
0
2.1k
意外と知られてないXcode13の新しい参照カウンタ最適化オプションの挙動
freddi
2
200
How to develop SIL Optimizer in Swift Language
freddi
0
410
SwiftコンパイラがSwiftで開発できるようになる話
freddi
3
710
知ろう! ShazamKit
freddi
1
250
Swift Optimizing at Compiler World
freddi
2
900
社内版SwiftコンパイラにContributeするまで
freddi
0
150
Other Decks in Programming
See All in Programming
分散システム、なんですぐ死んでしまうん?耐障害性を高めたいあなたのためのレジリエンスパターン入門
mshibuya
7
6.3k
言語を使う側から、作る側へ。 自作 Lisp で得た新たな気づき。
andpad
0
130
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
PRO
1
170
どこまでゆるくて許されるのか
tk3fftk
0
500
1年で人数1.5倍、PR数5.5倍増。 品質とアウトカムはどうなったか、 何が効いたか
ike002jp
0
140
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
140
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
140
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
4
1.1k
共通化で考えるべきは、実装より公開する型だった
codeegg
0
250
作るコストが小さくなった時代 幸せに働くために改めて考えたいこと 〜エンジニアとして価値を出し続けるために注視している二分野〜
yuppeeng
0
100
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
7
1.9k
Claude Opus 4.6以後の受託開発エンジニアの変化(Claude Code開発ノウハウ大公開スペシャルbyクラスメソッド)
iidatakuma
1
780
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Marketing to machines
jonoalderson
1
5.6k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
Practical Orchestrator
shlominoach
191
11k
Leo the Paperboy
mayatellez
8
1.9k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
650
Documentation Writing (for coders)
carmenintech
77
5.4k
エンジニアに許された特別な時間の終わり
watany
108
250k
Rails Girls Zürich Keynote
gr2m
96
14k
Claude Code のすすめ
schroneko
67
230k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
460
Transcript
2020/10/25 Recap Pointfree Vol. 1~3 iOSΞϓϦ։ൃͷͨΊͷFunctional Architectureใڞ༗ձ
ࠓճͷRecapͷΓํ • Pointfree Episode Vol 1 ~ 3 ͷ༰Λ͍͖ͬͯ·͢ •
ͨͩ͠ɺͯ͢Δͷ͕࣌ؒڐ͢ݶΓ • ొஃऀͷPlaygroundͰRecapͨ͠Γ༡ΜͰ͍͖·͢ • ղઆ͠ͳ͕ΒΔͷͰʮ͜͏͍͏ͷͰ͖Δʁʯ ͱ͔৭ʑʑΛೖΕΔͷ͓͢͢ΊͰ͢
Pointfree ͱ • ϓϩάϥϛϯάݴޠSwiftʹؔ͢ΔಈըͷγϦʔζ • ؔܕϓϩάϥϛϯάͱSwiftʹ͍ͭͯղઆ • Ұ෦Τϐιʔυߪಡ͕ඞਢ • https://www.pointfree.co/
“pointfree” ͱ • pointfree ͱ͍͏୯ޠࣗମʹ͍ͭͯҙຯ͕͋Δ
pointfree-style • Haskellͷؔͷॻ͖ํʢελΠϧʣ • … So a 'points-free' definition of
a function is one which does not explicitly mention the points (values) of the space on which the function acts. • … ͳͷͰɺʮpointfreeʯ ʹΑΔఆٛͱ͕ؔ࡞༻ ͢ΔۭؒͰɺʹ໌ࣔతʹݴٴ͠ͳ͍ఆٛΛ͞ ͍ͯ͠·͢ɻ
pointfree-style • ͨͱ͑ɺHaskell ͷ͜ͷॻ͖ํ f x = x + 1
Sun
pointfree-style • (point) ʹݴٴ͠ͳ͍ॻ͖ํͩͱ͜͏ॻ͚Δ • ͜Ε͕ઌఔͷ f ͷpointfree style f
= (+ 1) Sun
“pointfree” ͱ • ༨ஊͰ͋ΓDeep Dive͢Δͱ͕͘ͳΔͷͰׂѪ
ࠓ͢Pointfree ͷ Episode ʹ͍ͭͯ • Vol 1. Functions • Vol
2. Side Effects • Vol 3. UIKit Styling with Functions
Vol 1. Functions • ͪΐͬͱมΘͬͨελΠϧͷؔʹؔ͢Δॻ͖ํ • ͜Ε͔Βͷ Episode ΛݟΔ্Ͱඞਢͷ༰ •
৽͍͠ԋࢉࢠͷհ • |> ʹΑΔؔద༻, >>> ʹΑΔؔͷ߹
Vol 1. Functions • ݸਓతͳײಈ • ֤ԋࢉࢠʹΑΔ, left-to-right ͳίʔυͷ࡞ •
ؔΛ “Composition” ͢Δͱ͍͏ߟ͑ํ
Vol 2. Side Effects • ʮ෭࡞༻Λ੍ޚ͢ΔʯʹϑΥʔΧεͨ͠ Episode • print ͷྫ
• NumberFormatter ͷྫ • ԋࢉࢠ >=> ʹΑΔEffectΛ࣋ͬͨؔͷ߹ • ԋࢉࢠ <> ʹΑΔؔͷ߹ɺ<> ͷ ΦʔόʔϥΠυ
Vol 3. UIKit Styling with Functions • ࠓ·Ͱशͬͨ͜ͱΛͲͷΑ͏ʹ׆͔ͤΔ͔ʁ • ࣮ࡍʹίʔυ͕Massive
ʹͳΓͦ͏ͳUIViewͷྫ
ࢀߟࢿྉ • https://www.pointfree.co/ • https://wiki.haskell.org/Pointfree