Skip to content

Instantly share code, notes, and snippets.

@sporto
Last active September 6, 2017 04:41
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sporto/730a63723803486a1a18181ec53f9a1b to your computer and use it in GitHub Desktop.
Save sporto/730a63723803486a1a18181ec53f9a1b to your computer and use it in GitHub Desktop.
Thoughts on Elm is Wrong

http://reasonablypolymorphic.com/blog/elm-is-wrong

Haskell dev writes some Elm, concludes that the language should be avoided. Writes an article about it.

JS developer then reads and thinks, oh Elm is bad, I better stick to JS then.

We just made a huge disservice to the programming community. That article might be right in several things (how the lack of Typeclasses hurts expressiveness), but it totally missed the point of Elm.

As an industry we want to move to more robust languages. Haskell has been around for many year, but we are still mostly using mediocre programming languages. Haskell is great but it has a huge learning curve, so people don't adopt it.

Elm fills this gap really well, it is a great bridge into more robust languages, it gives you 80% of the nice things without the huge learning curve. Yes, it is less expressive than Haskell but that is a good trade off. Being more accessible is exactly the point of Elm.

Saying that people should jump from JS to Haskell (or Purescript) is unrealistic for most. I have been reading a few Haskell books and I get lost on the abstractions easily. Elm on the other hand is very concrete early on, which is great for learning.

I'm happy that Elm is the way it is (easy to learn), if it wasn't for that I would have never started learning Haskell, F#, Ocaml.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment