Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Elm - A new approach to building the front end
Joel Clermont
November 06, 2015
Programming
0
190
Elm - A new approach to building the front end
As delivered at True North PHP 2015
Joel Clermont
November 06, 2015
Tweet
Share
More Decks by Joel Clermont
See All by Joel Clermont
Level Up Your Code Quality
jclermont
0
100
How to Save Time
jclermont
0
19
F# Type Providers
jclermont
0
35
Give Elm a Chance! (that conference)
jclermont
0
80
Give Elm a Chance (newCodeCamp)
jclermont
0
86
Give Elm a Chance!
jclermont
0
130
Property-based testing: work harder, not smarter
jclermont
0
230
Elm: A new approach to building the front end
jclermont
0
61
Hack - Why Should I Care?
jclermont
0
48
Other Decks in Programming
See All in Programming
Rust、何もわからない...#3
estie
0
170
Cloudflare WorkersでGoのHTTPサーバーを動かすライブラリを作った話
syumai
0
150
Google I/O 2022 Android関連概要 / Google I/O 2022 Android summary
phicdy
1
410
SGGとは
inoue2002
0
440
ExplainableAIの概要とAmazon SageMaker Clarifyでの実装例
hacarus
0
110
夕食断食にTRY!/for-lt-12th
pachikuriii
0
250
Pythonによる開発をアップデートするライブラリの紹介
daikikatsuragawa
1
810
僕が便利だと感じる Snow Monkey の特徴/20220723_Gifu_WordPress_Meetup
oleindesign
0
110
段階的な技術的負債の解消方法.pdf
ko2ic
2
950
Dagger, la CI, autrement
guikingone
1
120
10歳の minne から、これから長く続くプロダクトを作るすべての人へ
tsumichan
9
3.7k
테라폼으로 ECR 관리하기 (How to Manage ECR with Terraform)
posquit0
0
530
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
35
3k
Design by the Numbers
sachag
271
17k
The Mythical Team-Month
searls
210
39k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
212
20k
Building Your Own Lightsaber
phodgson
95
4.7k
KATA
mclloyd
7
8.9k
Raft: Consensus for Rubyists
vanstee
127
5.5k
Documentation Writing (for coders)
carmenintech
48
2.6k
Intergalactic Javascript Robots from Outer Space
tanoku
260
25k
Streamline your AJAX requests with AmplifyJS and jQuery
dougneiner
127
8.5k
Thoughts on Productivity
jonyablonski
44
2.4k
Support Driven Design
roundedbygravity
87
8.6k
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 (plus types as data)
Statically Typed (another example)
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
• https://pragmaticstudio.com/blog/2014/12/19/ getting-started-with-elm • @elmlang @czaplic @rtfeldman • http://noredinktech.tumblr.com
Questions? @jclermont
https://joind.in/15744 Thank you! @jclermont