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
Stack funcional com Elm
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Éber Freitas Dias
February 29, 2020
Programming
100
0
Share
Stack funcional com Elm
Éber Freitas Dias
February 29, 2020
More Decks by Éber Freitas Dias
See All by Éber Freitas Dias
Contruindo aplicações livres de erros com Elm
eberfreitas
0
65
Como começar a fazer jogos com ferramentas open-source
eberfreitas
0
52
Other Decks in Programming
See All in Programming
tRPCの概要と少しだけパフォーマンス
misoton665
2
230
Road to RubyKaigi: Play Hard(ware)
makicamel
1
420
Agentic Elixir
whatyouhide
0
390
10 Tips of AWS ~Gen AI on AWS~
licux
5
460
AIと共に生きる技術選定 2026
sgash708
0
110
Making the RBS Parser Faster
soutaro
0
500
SREに優しいTerraform構成 modulesとstateの組み方
hiyanger
2
150
検索設計から 推論設計への重心移動と Recall-First Retrieval
po3rin
3
1k
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
640
書籍「ユーザーストーリーマッピング」が私のバイブル
asumikam
4
400
実践CRDT
tamadeveloper
0
590
CDK Deployのための ”反響定位”
watany
5
810
Featured
See All Featured
Six Lessons from altMBA
skipperchong
29
4.2k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
240
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
370
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
180
Unsuck your backbone
ammeep
672
58k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
150
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
Are puppies a ranking factor?
jonoalderson
1
3.3k
Navigating Team Friction
lara
192
16k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
270
Transcript
Stack funcional com Elm
Olá, eu sou o Éber! Elixir & Elm - Radify
None
None
Agradecimentos
Me interrompam!
JavaScript... é complicado
JavaScript... é complicado • dinâmica e flexível
None
JavaScript... é complicado • dinâmica e flexível • cheia de
*wats*
None
What the… JavaScript? - Kyle Simpsons https://youtu.be/2pL28CcEijU
JavaScript... é complicado • dinâmica e flexível • cheia de
*wats* • ecossistema populado
None
JavaScript... é complicado • dinâmica e flexível • cheia de
*wats* • ecossistema populado • as coisas estão melhorando...
Alternativas
Alternativas • CoffeeScript, PureScript, Dart, Reason, Haxe…
language Hipster
Alternativas • CoffeeScript, PureScript, Dart, Reason, Haxe… • TypeScript
Alternativas • CoffeeScript, PureScript, Dart, Reason, Haxe… • TypeScript •
LiveView
Alternativas • CoffeeScript, PureScript, Dart, Reason, Haxe… • TypeScript •
LiveView • Lumen
None
Uma linguagem agradável… … para webapps confiáveis … sem exceções
em tempo de execução … com mensagens de erro amigáveis
Elm • Evan Czaplicki, 2012 • Puramente funcional • Fortemente
tipada • Haskell, OCaml, F# • Compila para JS • Compilador escrito em Haskell • 0.19.1 (Out/2019)
Linguagem & arquitetura
Linguagem • Funcional
Linguagem • Funcional • Sintaxe
None
None
None
Linguagem • Funcional • Sintaxe • Compiler (runtime exceptions &
error msgs)
None
None
None
None
None
Linguagem • Funcional • Sintaxe • Compiler (runtime exceptions &
error msgs) • Fortemente tipada
Linguagem • Funcional • Sintaxe • Compiler (runtime exceptions &
error msgs) • Fortemente tipada • Alias types
None
Linguagem • Funcional • Sintaxe • Compiler (runtime exceptions &
error msgs) • Fortemente tipada • Alias types • Union types
None
Linguagem • Funcional • Sintaxe • Compiler (runtime exceptions &
error msgs) • Fortemente tipada • Alias types • Union types • Maybe
None
None
[ 1, NaN, NaN ]
None
None
None
Linguagem • Funcional • Sintaxe • Compiler (runtime exceptions &
error msgs) • Fortemente tipada • Alias types • Union types • Maybe • Funcional² (sem efeitos colaterais)
Arquitetura • The Elm Architecture (MVU)
https://elmprogramming.com/model-view-update-part-1.html
Arquitetura • The Elm Architecture (MVU) • Commands & Subscriptions
https://elmprogramming.com/subscriptions.html
Exemplo
None
None
None
None
None
None
Trade-offs
Quem usa? • thoughtbot • Rakuten • NoRedInk • Stone
• Cálculo Jurídico • PivotalTracker • Emirates • Vy • ...
Como aprender? • https://guide.elm-lang.org/ • https://elmprogramming.com/ • https://www.manning.com/books/elm-in-action • https://cuducos.me/2016/10/24/vamos-aprender-elm.html
• https://www.twitch.tv/eberfreitas
Dúvidas? speakerdeck.com/eberfreitas twitter.com/eber_freitas github.com/eberfreitas linkedin.com/in/eberfreitas
[email protected]