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
170
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
460
Going All In with NeoVim
dkarter
0
250
Versioning APIs in Phoenix
dkarter
1
170
Integration Testing with Page Objects
dkarter
3
150
Build Your First Vim Plugin
dkarter
1
250
Other Decks in Programming
See All in Programming
PsySHから紐解くREPLの仕組み
muno92
PRO
1
530
SLI/SLOの設定を進めるその前に アラート品質の改善に取り組んだ話
tanden
2
770
AI Agents with JavaScript
slobodan
0
190
体得しよう!RSA暗号の原理と解読
laysakura
3
550
Rollupのビルド時間高速化によるプレビュー表示速度改善とバンドラとASTを駆使したプロダクト開発の難しさ
plaidtech
PRO
1
110
PHPer's Guide to Daemon Crafting Taming and Summoning
uzulla
2
1.1k
Defying Front-End Inertia: Inertia.js on Rails
skryukov
0
380
CRE Meetup!ユーザー信頼性を支えるエンジニアリング実践例の発表資料です
tmnb
0
550
これだけは知っておきたいクラス設計の基礎知識 version 2
masuda220
PRO
18
4.1k
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
1.4k
AtCoder Heuristic First-step Vol.1 講義スライド(山登り法・焼きなまし法編)
takumi152
4
1k
custom_lintで始めるチームルール管理
akaboshinit
0
190
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
25k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2.1k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
29
2k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
22
2.6k
Optimising Largest Contentful Paint
csswizardry
35
3.2k
Making Projects Easy
brettharned
116
6.1k
A Modern Web Designer's Workflow
chriscoyier
693
190k
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!