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
Elm: A new approach to building the front end
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Joel Clermont
September 22, 2015
Technology
120
0
Share
Elm: A new approach to building the front end
Joel Clermont
September 22, 2015
More Decks by Joel Clermont
See All by Joel Clermont
How to get unstuck
jclermont
0
180
Level Up Your Code Quality
jclermont
0
370
How to Save Time
jclermont
0
48
F# Type Providers
jclermont
0
110
Give Elm a Chance! (that conference)
jclermont
0
330
Give Elm a Chance (newCodeCamp)
jclermont
0
320
Give Elm a Chance!
jclermont
0
330
Property-based testing: work harder, not smarter
jclermont
0
470
Elm - A new approach to building the front end
jclermont
0
440
Other Decks in Technology
See All in Technology
Hacobu Tech Deck
hacobu
PRO
0
120
The Journey of Box Building
tagomoris
4
3.2k
Expiration of Secure Boot Certificates for vSphere Virtual Machines
mirie_sd
0
100
AI: Making Admin and Users, Lives Better
kbmsg
0
110
マルチエージェント × ハーネスエンジニアリング × GitLab Duo Agent Platformで実現する「AIエージェントに仕事をさせる時代へ。」 / 20260421 GitLab Duo Agent Platform
n11sh1
0
170
Shipping AI Agents — Lessons from Production
vvatanabe
0
280
AI駆動1on1〜AIに自分を育ててもらう〜
yoshiakiyasuda
0
130
実践ハーネスエンジニアリング:TAKTで実現するAIエージェント制御 / Practical Harness Engineering: AI Agent Control Enabled by TAKT
nrslib
12
4.7k
Microsoft 365 / Microsoft 365 Copilot : 自分の状態を確認する「ラベル」について
taichinakamura
0
310
AgentCore×VPCでの設計パターンn選と勘所
har1101
3
290
目的ファーストのハーネス設計 ~ハーネスの変更容易性を高めるための優先順位~
gotalab555
8
2.2k
Route 53 Global Resolver で高額課金発生!
otanikohei2023
0
110
Featured
See All Featured
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
220
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
27
3.4k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
170
How Software Deployment tools have changed in the past 20 years
geshan
0
33k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
320
Done Done
chrislema
186
16k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
Color Theory Basics | Prateek | Gurzu
gurzu
0
290
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Tell your own story through comics
letsgokoyo
1
900
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.1k
Transcript
Elm A new approach to building the front end Joel
Clermont @jclermont
What to expect • Elm language tour
What to expect • Elm language tour • Application architecture
overview
What to expect • Elm language tour • Application architecture
overview • Tour an Elm app
What to expect • Elm language tour • Application architecture
overview • Tour an Elm app • How does this fit in with my current process?
What to expect • Elm language tour • Application architecture
overview • Tour an Elm app • How does this fit in with my current process? • Tooling
What to expect • Elm language tour • Application architecture
overview • Tour an Elm app • How does this fit in with my current process? • Tooling • Why should I give Elm a try?
Elm as a language
Pure Functions
Immutable Data
Statically Typed
Statically Typed
Functional Programming • higher-order functions • currying • recursion •
pattern matching
All hail the pipe!
Questions?
Elm architecture
Model
Update
View
Questions?
Tour a simple app
Model
Update
View
None
Questions?
How does this fit in?
From Elm to your browser • compile to JS
From Elm to your browser • compile to JS •
link JS source in your web app
From Elm to your browser • compile to JS •
link JS source in your web app • Elm.fullscreen
From Elm to your browser • compile to JS •
link JS source in your web app • Elm.fullscreen • Elm.embed
It’s just HTML/CSS/JS
Excellent JS interop
Questions?
Tooling
Compiler
Excellent tooling • Package manager
Excellent tooling • Package manager • REPL
Excellent tooling • Package manager • REPL • Interactive debugger
Excellent tooling • Package manager • REPL • Interactive debugger
• Great documentation
Questions?
Why should I consider Elm? • It’s fast
Why should I consider Elm? • It’s fast • It’s
safe
Why should I consider Elm? • It’s fast • It’s
safe • Great tooling and ecosystem
Why should I consider Elm? • It’s fast • It’s
safe • Great tooling and ecosystem • Easy to integrate gradually
Why should I consider Elm? • It’s fast • It’s
safe • Great tooling and ecosystem • Easy to integrate gradually • It’s FUN
Next steps • http://elm-lang.org (live demos, debugger, REPL) • https://pragmaticstudio.com/elm
• @elmlang • @czaplic • @rtfeldman • http://noredinktech.tumblr.com
Questions? @jclermont
Thank you! @jclermont