My first experience with elm was installing a package, and that was enough to completely blow me away. This is how it went down:
$ elm package install elm-lang/html To install elm-lang/html I would like to add the following dependency to elm-package.json: "elm-lang/html": "1.0.0 <= v < 2.0.0" May I add that to elm-package.json for you? (y/n) y Some new packages are needed. Here is the upgrade plan. Install: elm-lang/core 4.0.1 elm-lang/html 1.0.0 elm-lang/virtual-dom 1.0.2 Do you approve of this plan? (y/n) y Downloading elm-lang/core Downloading elm-lang/html Downloading elm-lang/virtual-dom Packages configured successfully!
An installer that asks to write to the dependencies list, using semantic versioning, letting me know exactly what it’s going to do, and asking my approval beforehand. I’ve never experienced a package manager like this. Even the language used was so easy to understand and friendly. I haven’t written a single line of code but I already like this language.