Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Introduction to Elm
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Dorian Karter
December 04, 2015
Programming
190
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Introduction to Elm
Talk I gave at Hashrocket Mini Conf about the wonderful Elm language.
Dorian Karter
December 04, 2015
More Decks by Dorian Karter
See All by Dorian Karter
Building Multiplayer Games with Phoenix LiveView
dkarter
2
510
Going All In with NeoVim
dkarter
0
290
Versioning APIs in Phoenix
dkarter
1
190
Integration Testing with Page Objects
dkarter
3
200
Build Your First Vim Plugin
dkarter
1
280
Other Decks in Programming
See All in Programming
[GoCon2026] When Goroutines Are Not Enough: Runtime Locality in High-Throughput Go
takehaya
6
2.4k
Vue Fes Japan 2026 タイムテーブル徹底解説
448jp
1
470
iOSDC Japan 2026 - Swiftで作って学ぼう!データベース自作入門
kaseken
2
290
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
8k
速習iPhone Duo対応
yuukiw00w
1
710
Intent as Code
shoppingjaws
6
1.1k
AI が書く Go コードの品質を劇的に向上させる Linter: “declscope”
mpyw
0
380
Agents on Rails - Rails at Scale 2026
irinanazarova
0
140
WebMCP Challenge に星空観察アプリで参加した話
okajun35
0
190
FreeBSDでZabbixを動かす
kenkino
0
320
MVNOの申込からeSIM開通までをiOSアプリでつなぐ- 本人確認・MNP・通信事業者基盤をまたぐ実装
satotakeshi
0
460
Verilogで学ぶCPU自作入門.pdf
uyuki234
2
590
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
440
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.3k
The Curse of the Amulet
leimatthew05
3
15k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
940
First, design no harm
axbom
PRO
2
1.3k
Color Theory Basics | Prateek | Gurzu
gurzu
1
470
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
250
Faster Mobile Websites
deanohume
310
32k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
We Are The Robots
honzajavorek
0
380
Game over? The fight for quality and originality in the time of robots
wayneb77
1
290
Transcript
Make the web functional again. Elm
What is Elm?
Functional Reactive Programming Language
Statically Typed
Compiles to JavaScript Generates HTML and CSS
Evan Czaplicki Present: Developed in 2012 by
Why Elm?
No more runtime exceptions!
Pure X ⇒ Y
Immutable
Blazing Fast Rendering
State History (and free time travelling debugger)
Type inference (but you’ll end up defining your types)
Interactive Programming Due to Hot Swapping
Composable Components Like React, but components can run independently
Amazing Tools!
REPL Package Manager Compiler Reactor Debugger
None
None
Free and Automatic Semantic Versioning
Smooth JavaScript interop JS
Easy(er) syntax and lower learning curve * When compared to
other functional languages ** terms and conditions may apply
Elm Syntax Crash Course
Literals
Manipulating Literals
Lists
Functions Anonymous functions
Records
Type Annotations
Type Aliases
Elm Architecture Basic Concepts
MUV = { Model Update View }
None
Signals
None
None
Mailboxes
DEMO
Thank You!