Top Banner
Elm Never get a runtime error anymore. Almost.
20

Elm - never get a runtime error anymore. Almost.

Apr 12, 2017

Download

Software

Anton Astashov
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Elm - never get a runtime error anymore. Almost.

ElmNever get a runtime error anymore. Almost.

Page 2: Elm - never get a runtime error anymore. Almost.

Montage

Page 3: Elm - never get a runtime error anymore. Almost.

Secret techniques for reliable projects

• Use pure functions• Avoid nulls• Immutability everywhere• Powerful type system• One global state• View is just a pure function of state

Page 4: Elm - never get a runtime error anymore. Almost.

Elm

Page 5: Elm - never get a runtime error anymore. Almost.

Has Haskell-like syntax, but thankfully it’s not Haskell

Page 6: Elm - never get a runtime error anymore. Almost.

Elm• Pure language• No nulls• Everything is immutable• Compiler checks everything• Very opinionated

Page 7: Elm - never get a runtime error anymore. Almost.

Elm Architecture

View

function

Model

data

Update

Action

function

EventHandlerevent

event

Page 8: Elm - never get a runtime error anymore. Almost.
Page 9: Elm - never get a runtime error anymore. Almost.

Elm Architecture is a fractal

EventHandlerevent

event

Model

UpdateView

Model

UpdateView

Model

UpdateView

ModelUpdate

View

Action

Page 10: Elm - never get a runtime error anymore. Almost.
Page 11: Elm - never get a runtime error anymore. Almost.
Page 12: Elm - never get a runtime error anymore. Almost.
Page 13: Elm - never get a runtime error anymore. Almost.
Page 14: Elm - never get a runtime error anymore. Almost.
Page 15: Elm - never get a runtime error anymore. Almost.
Page 16: Elm - never get a runtime error anymore. Almost.
Page 17: Elm - never get a runtime error anymore. Almost.

No, not really…

Page 18: Elm - never get a runtime error anymore. Almost.
Page 19: Elm - never get a runtime error anymore. Almost.

Cons• Very opinionated• Tooling• Dead Code Elimination• Immaturity• Runtime errors are still possible• Some things are hard to do• Almost no libraries for “production”• Poor coverage of modern browser APIs

Page 20: Elm - never get a runtime error anymore. Almost.

Is it ready for production?It depends…

But if you learn it,it will make you a better JavaScript developer.