Aviva Directory » Computers & Internet » Programming » Elixir

Elixir is a dynamic, functional language used to build scalable and maintainable applications.

The Elixir programming language runs on top of the BEAM virtual machine (VM), which is at the core of the Erlang programming language. Elixir is compatible with Erlang, although it has different syntax and features.

Building on top of Erlang, Elixir shares the same abstractions for building distributed, fault-tolerant applications.

The chief benefit of Elixir is that it can be used with the Erlang VM. Its processes avoid problems associated with managing share data by getting rid of shared memory, and counting on asynchronous message passing. Additionally, its processes can connect with each other across the same network, which makes the language useful for horizontal scaling, as in those used in distributed systems.

As Elixir has proven to be successful in the Erlang VM, the Erlang community has accepted the language due to its scalable and maintainable applications. Thus, it has access to the Erlang ecosystem, functions, and benefits.

Elixir follows semantic versioning, for the most part, and has only one major version. At this time, there are no plans for a second.

The programming language is broken into six applications: Elixir (standard library), EEx (templating library), ExUnit (unit test library), IEx (interactive shell), Logger (built-in Logger), and Mix (build tool).

Released in 2011, the language was created by Jose Valim, as a research and development project at Plataformatec. The goals of the language were to enable higher extensibility and productivity in the Erland virtual machine, while maintaining compatibility with Erlang's ecosystem. With the goal of creating a programming language for large-scale sites and applications, Valim used features of Ruby, Erlang, and Clojure.

Elixir distributions are available for macOS, GNU/Linux, BSD, Windows, Raspberry Pi, and Docker.

The focus of this category is on the Elixir programming language. Websites related to Elixir are appropriate for this category, along with any editors or other tools designed to be used with the programming language, user groups, forums, or tutorials.



Recommended Resources

Search for Elixir on Google or Bing