47: Elm 0.19 - JSToElm
All Episodes

47: Elm 0.19

It's here, it's here. We all woke up in the morning to a fantastic gift, we're talking all things Elm 0.19 was released today. Let's dive in and take a look!

It’s Here, the release of Elm 0.19

Elm-Conf is soon!!!! Come join me

Quick Hits

  • function-level dead code elimination

    • Across the entire ecosystem
  • faster compile times, by a lot
  • Nicer Parse Errors
  • Better Docs on types, interop, and SPA
  • packages

    • elm/time
    • elm/url
    • elm/json
    • elm/browser
    • Html.beginner becomes Browser.element and Browser.document
  • Single elm binary so elm-make is now just elm make
  • Other renaming elm-package.json is now just elm.json
  • Encode and Decode are now under elm/json
  • all elm-lang are now just elm/*
  • Removed User-Defined Operators
  • Perf for collections on foldr which is gonna be List, Array, Dic, and Set
  • getViewport
  • The build up

    • You can see the outline of that learning path in the Browser module. It lets you create Elm programs with the following functions:
    • sandbox — react to user input, like buttons and checkboxes
    • element — talk to the outside world, like HTTP and JS interop
    • document — control the <title> and <body>
    • application — create single-page apps
  • It’s really really small!!!

compare

  • elm-core is 1.0

    		   "elm/browser": "1.0.0",
              "elm/core": "1.0.0",
              "elm/html": "1.0.0",
              "elm/http": "1.0.0",
              "elm/json": "1.0.0",
              "elm/svg": "1.0.0",
              "elm/url": "1.0.0",
              "elm-explorations/markdown": "1.0.0"
          },
          "indirect": {
              "elm/time": "1.0.0",
              "elm/virtual-dom": "1.0.0"
    
    • That leads to the question, is Elm 1.0. The short answer is no.

Picks

  • All the contributors to Elm that worked hard for these improvements

  • Elm-Conf, bc I can’t wait to go!

Resources

Follow

Published 22 Aug 2018

A show about learning Elm, Functional Programing, and generally leveling up as a JS developer.
JavaScript To Elm on Twitter