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
430
Going All In with NeoVim
dkarter
0
240
Versioning APIs in Phoenix
dkarter
1
160
Integration Testing with Page Objects
dkarter
3
150
Build Your First Vim Plugin
dkarter
1
240
Other Decks in Programming
See All in Programming
Java 22 Overview
kishida
1
180
AWS Application Composerで始める、 サーバーレスなデータ基盤構築 / 20240406-jawsug-hokuriku-shinkansen
kasacchiful
1
260
Blue/Greenデプロイの導入による 運用フローの改善
kudoas
1
360
educure_カリキュラム生操作マニュアル.pdf
linew_official
0
640
PHPはいつから死んでいるかの調査
chiroruxx
1
360
Compose-View Interop in Practice (mDevCamp 2024)
stewemetal
0
110
0→1と1→10の狭間で Javaという技術選定を振り返る/Reflecting on the Decision to Choose Java Between Scaling from 0 to 1 and 1 to 10
jaguar_imo
2
380
Code Reviews
bkuhlmann
4
890
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
120
Build Apps for iOS, Android & Desktop in 100% Kotlin With Compose Multiplatform (mDevCamp 2024)
zsmb
0
170
サイコロで理解する統計的仮説検定の考え方
tatamiya
4
850
From Spring Boot 2 to Spring Boot 3 with Java 22 and Jakarta EE
ivargrimstad
0
1.1k
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
72
8.2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
18
1.7k
Automating Front-end Workflow
addyosmani
1355
200k
Bootstrapping a Software Product
garrettdimon
PRO
301
110k
WebSockets: Embracing the real-time Web
robhawkes
59
7k
Being A Developer After 40
akosma
56
580k
Build The Right Thing And Hit Your Dates
maggiecrowley
23
2k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
226
16k
Building a Scalable Design System with Sketch
lauravandoore
455
32k
How to train your dragon (web standard)
notwaldorf
72
5.1k
The Straight Up "How To Draw Better" Workshop
denniskardys
227
130k
VelocityConf: Rendering Performance Case Studies
addyosmani
320
23k
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!