Something this article misses a bit (which is fair, because it's about the <i>language</i>) is that the Elixir community has already put together a very impressive amount of tooling for such a young language. For package management, hex seems mature and well-designed, and I've found their task / compilation management tool, mix, to be a dream to work with. José Valim spent a lot of time talking about the entire ecosystem in his recent keynote at ElixirConf 2015[0].<p>[0]: <a href="https://www.youtube.com/watch?v=9RB1JCKe3GY" rel="nofollow">https://www.youtube.com/watch?v=9RB1JCKe3GY</a>
Looking forward to the forthcoming "NextTrendyNewLang concepts for Elixir developers" article.<p>In all seriousness, if you want to learn Elixir, learn Erlang.
> in proper functional languages data is immutable. Once you have set a variable you can not change it.<p>Immutability != single assignment. Two separate concepts, often confused. Elixir is immutable but allows variable shadowing, in which a new variable with the same name is created and the old variable is tossed.
Although I have nothing against Erlang, I regularly see claims such as "Erlang is powering around 50% of telecom networks.", also stated in this article. Is this correct, though? Or was this the case only many years ago?