Why do we need types? It's best illustrated by the old joke:
A programmer's wife told him "Go to the store and buy milk and if they have eggs, get a dozen." He came back a while later with 12 cartons of milk!
A testing ground for all things Elm. There's plenty of javascript guides out there, so this only covers functional programming in the style of Elm. Also see "Lazy Loading of Anki Cards" for revision.
# Initialise an Elm project
elm init
# Install a package
elm install elm/<package>
# Make a HTML file from an Elm one
elm make src/Main.elm
# Compile to javascript file
elm make src/Main.elm --output=app.js
# View in the browser
elm reactor
- Official Elm guide
- Elm syntax (quick overview of syntax)
- Learn you an Elm (based on Haskell book)
- Beginning Elm
- Richard Feldman's intro and advanced Elm
- Exercism's Elm track
- Life of a file
- Teaching Elm to beginners
- Scaling Elm apps
- Making impossible states impossible1
- Make data structures
- From Rails to Elm and Haskell
- Elm in Action
- Learn you an Elm
- Learn Elm (Elm Craft)
- Elm Doc Preview (great for offline documentation)
- Elm land
- Everything else (massive list)
- Elm community FAQs
- Why large records are OK
- Why do I have to use Json decoders?
- What, exactly, is a
Msg
for? (no state please!) - Avoiding import cycles and normalising records
- Andy Balaam's Elm examples
- Built with Elm
- Elm Patterns (Might be a little outdated)
- Fuzz tests in Elm
- Sorting comparables (record)
- Here's how packages are documented
- Elm package design guidelines
Footnotes
-
All (or most) of Richard Feldmans talks ↩