During the days around RubyKaigi, lots of related events happened in Tokyo. Every Tuesday is held Asakusarb, but on Tuesday June 4th, Asakusarb was renamed ElixirKaigi.
What's Elixir ?
From the Elixir website:
Elixir is a functional meta-programming aware language built on top of the Erlang VM. It is a dynamic language with flexible syntax with macros support that leverages Erlang's abilities to build concurrent, distributed, fault-tolerant applications with hot code upgrades.
Elixir was created by José Valim, and since he was one of the keynote speakers of RubyKaigi, the organizers of Asakusarb gave him the opportunity to speak about Elixir during an Asakusarb meeting. There were more than 100 people in the audience, including more than 10 Ruby committers, so it was the perfect occasion for José to introduce his language in front of a Japanese crowd.
So, José Valim in his presentation spoke about his motivation behind Elixir, and clearly, this motivation goes beyond a new syntax (checkout out Elixir: It's Not About Syntax). Sure, the syntax seems sweeter than Erlang, but, Elixir provides way more than better syntax.
José explained why he was interested in the Erlang VM, which solves problems like concurrency and how to build reliable distributed systems like it used to be years ago, problems that are now faced everyday in the web development world. But, from his point of view, Erlang was lacking some features like meta-programming, a good tooling environnement, etc. So, he started writing Elixir.
Following this presentation, José did a quick demo by sharing code between two Interactive Elixir Shells, sending new code from one to another, and also making the computation from one to another.
After this presentation, José Valim had to leave to catch his plane, but in the following discussions, it was obvious that José got people interested in Elixir.
Hopefully, some of them will be writing "distributed fault-tolerant applications with hot-code swapping" in the next months / years thanks to Elixir.
One last thing
Elixir has been getting more and more attention in the past few months, although it's probably not ready yet (for example, there is a real lack of database driver).
Well, I do not know if Elixir will be the next big thing in web development, but it sure seems interesting, and I will definitely give it a try.
If you are interested in Elixir, you should definitely check out Programming Elixir: Functional |> Concurrent |> Pragmatic |> Fun, a book written by Dave Thomas.
Let's give the last word to Joe Armstrong, the creator of Erlang, who said in a blogpost:
It didn’t take long, but pretty soon my gut feeling kicked in. This is good shit.