|
|
|
|
|
by rlander
5132 days ago
|
|
I used to be very excited about Elixir, not because I hate Erlang's syntax (I actually quite like it), but because I saw in it the opportunity for a mainstream, general purpose language with macros on top of the excellent Erlang runtime. However, after 2 small projects with Clojure, my thoughts have changed. To me it is the general programming language, and it's only a matter of time until clojure-beam sees the light of day (there's already Joxa). Also, it occupies a weird spot: after v0.4's redesign, it pretty much kept Erlang's semantics, which made it unlikely to be adopted by old Erlangers and, with the whole OO thing was thrown away, it is too much a departure from Ruby. |
|
The problem with the OO approach is that OO didn't suit well an immutable language. The Erlang VM forces us to keep Erlang's semantics and it has been this way before and after the redesign. There is no way around, believe me, I tried. :)
I agree its current version is a stronger departure from Ruby, but also simpler and more powerful than before (now we have all of Erlang in our hands!). We are exchanging the OO familiarity by a better/tighter integration with Erlang runtime, which will, hopefully, be a good reason for people to try it out. I also believe there are plenty of reasons for Erlang developers to try it out, it is more familiar (which actually helps) and addresses many of Erlang shortcomings (it provides protocols, dynamic records, dynamic function generation via macros, etc). During the next weeks, I will write a document more specific to Erlang developers on how Elixir addresses these shortcomings.
When you give Elixir a try, join us at #elixir-lang, I would love to chat more!