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
How to write like Cats
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Shannon
August 28, 2019
Technology
260
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
How to write like Cats
Shannon
August 28, 2019
More Decks by Shannon
See All by Shannon
Signify Bootcamp
signify
0
290
Event Sourcing Blockchains at TokenAnalyst
signify
0
150
The Last Frontier and Beyond
signify
0
150
Jon Pither
signify
0
250
Kubernetes as a Streaming Data Platform with Kafka, Spark, and Scala
signify
0
100
Writing human readable tests using Scala
signify
0
160
Making Contracts Smart, Secure and Functional with DAML and Scala
signify
0
140
Ansible and Scala Projects
signify
0
290
Automatic differentiation in Scala by Xiayun Sun
signify
0
420
Other Decks in Technology
See All in Technology
なぜSRE・セキュリティは評価されないのか?守りの組織を事業成長エンジンに変えた実践
cscengineer
PRO
3
2.2k
grill-me(grilling):AI駆動開発を超助けてくれるSkill / grill me
mathbullet
0
100
PM領域でのAI Agentの活用
lycorptech_jp
PRO
0
270
作り直せるコードは迅速に 作り直せないDBは慎重に - AI時代のプロダクトエンジニアが「判断の不可逆性」で開発速度を変える話
kinosuke01
0
230
20260903 Tokyo Jazug Night #62 | Azure エンジニアよ、 その環境は本当にセキュアか?
olivia_0707
1
610
AI時代のAPI品質を支えるガードレール / API Guardrails for API quality in the AI era
yokawasa
1
110
スクラムで身についていた動き方を、XPで捉え直してみた
codmoninc
PRO
1
200
Self Healing Rollouts: Automating Production Fixes with Agentic AI
kdubois
0
150
プロダクト思考 × 基盤思考を AIで実現する Compound Engineering
tkc66buzz
1
260
AI活用の現在地、 ちゃんと見えてますか?/XPfest-2026
visional_engineering_and_design
0
150
その指示、Bobにしっかり伝わってる?初心者でも即実践できる プロンプト/コンテキスト設計のコツ
muehara
0
130
AIで実装は速くなった。なのにプロダクトは速くならない。職能の壁を越えて価値のフローを設計する
nwiizo
6
7k
Featured
See All Featured
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
510
Making Projects Easy
brettharned
120
6.7k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
370
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
520
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The Curse of the Amulet
leimatthew05
2
14k
Building an army of robots
kneath
306
46k
GitHub's CSS Performance
jonrohan
1033
470k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Optimizing for Happiness
mojombo
378
71k
Site-Speed That Sticks
csswizardry
13
1.5k
Transcript
How to write like cats
None
What we won’t be talking about What we will be
talking about • Category theory • Monads, Monoids, Functors etc. • Effect types • Polymorphism • Type classes • Implicits
Subtype polymorphism
Subtype polymorphism ↓ Ad-hoc Polymorphism (Type classes)
None
Live coding! github.com/MontyWest/tech-talk-typeclass
Type Classes • Can add functionality to types you don’t
‘own’. • Can change functionality in different scopes. • Higher level of abstraction, composability and applicability. • Enables library like Cats, allows others to do your work for you!
Links to follow • Typelevel Cats: https://typelevel.org/cats/ • Typelevel blog:
https://typelevel.org/cats/typeclasses.html • Talks: ◦ Petra Bierleutgeb, Polymorphism in Scala: https://www.youtube.com/watch?v=-SA1Ui283Qc ◦ Rob Norris, ScalaX keynote: https://skillsmatter.com/skillscasts/11626-keynote- pushing-types-and-gazing-at-the-stars
Thanks for listening! Any Questions?