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
Joel Clermont
November 06, 2015
Programming
0
320
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
How to get unstuck
jclermont
0
73
Level Up Your Code Quality
jclermont
0
250
How to Save Time
jclermont
0
28
F# Type Providers
jclermont
0
52
Give Elm a Chance! (that conference)
jclermont
0
190
Give Elm a Chance (newCodeCamp)
jclermont
0
180
Give Elm a Chance!
jclermont
0
200
Property-based testing: work harder, not smarter
jclermont
0
350
Elm: A new approach to building the front end
jclermont
0
86
Other Decks in Programming
See All in Programming
BuefyのMaintainerを引き継いだ件
kikuomax
0
510
Some Quick Ideas To Improve Your Tests ( #jassttokyo )
teyamagu
PRO
2
2.3k
Crafting a Own PHP - ウキウキ手作りミニマリストPHP
uzulla
4
1.1k
TCAの Shared Stateって どういう仕組みになってんの?
yimajo
0
330
OpenAPI を守るのは難しい
ohmori_yusuke
1
140
WebComponentsで フレームワークを1ページに共存させる
webuilder240
0
150
PHPerKaigi 2024〜10年以上動いているレガシーなバッチシステムを Kubernetes(Amazon EKS) に移行する取り組み〜
tshinowpub
1
220
ここ1~2年くらいで 使えるようになった(主要ブラウザーの最新版 がすべて対応した ) ウェブの新機能について ランダムに喋る!
myzkyy
9
6.5k
C# 大統一理論推進委員会 会員のための Unity Package Manager プロジェクト構成案
monry
PRO
0
580
Go1.22からの疑似乱数生成器について/go-122-pseudo-random-generator
convto
1
160
Understanding Ast By Looking
inouehi
0
120
クソコード動画『カプセル化 Mk-II』 で考える 上手くカプセル化できない理由 / encapsulation2
minodriven
11
7.8k
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
92
4.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
10
4.5k
Atom: Resistance is Futile
akmur
258
25k
Keith and Marios Guide to Fast Websites
keithpitt
407
22k
Teambox: Starting and Learning
jrom
126
8.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
657
120k
A Modern Web Designer's Workflow
chriscoyier
689
190k
For a Future-Friendly Web
brad_frost
170
8.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.8k
Git: the NoSQL Database
bkeepers
PRO
421
63k
GraphQLとの向き合い方2022年版
quramy
28
12k
The Language of Interfaces
destraynor
150
23k
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