Joe Armstrong himself was quoted as saying Elixir was some "good shit" (may he rest in peace. Super smart and super funny is a rare combination).
c++ added extensive new tools that the base language did not have
c++ did not get its engineering team hired off to work on something unrelated
c++ did not create problems by misunderstanding c designs and trying to change them
in these four ways, elixir and coffeescript are alike
.
> Joe Armstrong himself was quoted as saying Elixir was some "good shit"
Yeah, Joe also said that object orientation was a terrible mistake, and if you read his design principles, Elixir was swimming upstream of most of them
When Joe got asked about this, his answer was simple: "I just like to support other peoples' programming languages. You can tell my personal preferences by what languages I use."
.
> may he rest in peace.
I also miss Joe :(
> Yeah, Joe also said that object orientation was a terrible mistake, and if you read his design principles, Elixir was swimming upstream of most of them
Did you, by any chance, use Elixir in 2011 and never really re-approached it?
Back in 2011, Elixir was an attempt to bring Ruby and object-orientation to the Erlang VM. It had a prototype-based model, it had eval-based meta-programming, it had loops, and, as you may guess, it failed pretty spectacularly.
But at the end of 2011 and beginning of 2012, I started from scratch. Object-orientation has been removed, a Lisp-based meta-programming model was introduced, most Ruby influences were removed except for minor syntax constructs.
Saying that the design principles were "swimming upstream" of OO principles are inaccurate since 2012 - as most of your other comments in this thread. Our main additions at the language level, compared to Erlang, are macros and protocols, where one is Lisp-based and the other is taken after Clojure/Haskell. From 2012, putting the Erlang VM front and center has literally been one of our main design goals.
But everyone's entitled to their own opinion. I occasionally read opinions from polyglots who prefer Erlang's syntax to many other languages. But I personally much prefer Elixir's syntax to Erlang's. For one, the issues in dealing with strings and binaries as mentioned above, for another, I find the punctuation rules in Erlang to be a complete PITA ("." and ",", anyone?).
I suppose it's all opinion, but the points you make about Elixir, when it really is very similar to Erlang 'semantically' (not syntactically), are interesting for how at odds they seem with any of the expert Erlang and Elixir developers I've spoken to, or any of the better researched opinions I've read.
Which is why I find your posts interesting, if not a little misguided.