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
Introduction to Elm
Search
Dorian Karter
December 04, 2015
Programming
2
180
Introduction to Elm
Talk I gave at Hashrocket Mini Conf about the wonderful Elm language.
Dorian Karter
December 04, 2015
Tweet
Share
More Decks by Dorian Karter
See All by Dorian Karter
Building Multiplayer Games with Phoenix LiveView
dkarter
2
470
Going All In with NeoVim
dkarter
0
260
Versioning APIs in Phoenix
dkarter
1
170
Integration Testing with Page Objects
dkarter
3
160
Build Your First Vim Plugin
dkarter
1
260
Other Decks in Programming
See All in Programming
GraphQL×Railsアプリのデータベース負荷分散 - 月間3,000万人利用サービスを無停止で
koxya
1
990
プログラミングどうやる? ~テスト駆動開発から学ぶ達人の型~
a_okui
0
190
高度なUI/UXこそHotwireで作ろう Kaigi on Rails 2025
naofumi
4
2.8k
CSC509 Lecture 01
javiergs
PRO
1
430
Platformに“ちょうどいい”責務ってどこ? 関心の熱さにあわせて考える、責務分担のプラクティス
estie
2
520
麻雀点数計算問題生成タスクから学ぶ Single Agentの限界と Agentic Workflowの底力
po3rin
5
2k
defer f()とdefer fの挙動を 誤解していた話
kogamochiduki
2
160
CSC305 Lecture 01
javiergs
PRO
1
380
半自動E2Eで手っ取り早くリグレッションテストを効率化しよう
beryu
6
2.4k
パフォーマンスチューニングで Web 技術を深掘り直す
progfay
18
4.8k
Back to the Future: Let me tell you about the ACP protocol
terhechte
0
120
ИИ-Агенты в каждый дом – Алексей Порядин, PythoNN
sobolevn
0
140
Featured
See All Featured
Building an army of robots
kneath
306
46k
Statistics for Hackers
jakevdp
799
220k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Documentation Writing (for coders)
carmenintech
75
5k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Optimizing for Happiness
mojombo
379
70k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
For a Future-Friendly Web
brad_frost
180
9.9k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
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!