Elixir (langage)
Elixir est un langage de programmation multi-paradigme fonctionnant sur la machine virtuelle Erlang (BEAM). Il est créé en 2011 par le développeur José Valim, personnalité du monde Ruby et l'un des premiers contributeurs au framework de programmation Ruby on Rails. Il intègre les paradigmes de programmation fonctionnelle, programmation concurrente et programmation orientée processus (en), et supporte la métaprogrammation via un système de macros et le polymorphisme via un système dit de protocoles.
Pour les articles homonymes, voir Élixir.
Elixir | ||
Date de première version | 2011 | |
---|---|---|
Paradigme | Fonctionnel, concurrent | |
Auteur | José Valim Hernàndez | |
Développeur | José Valim Hernàndez | |
Dernière version | 1.12.2 (1er juillet 2021) | |
Typage | Dynamique | |
Influencé par | Erlang, Clojure, Ruby | |
Licence | Licence Apache | |
Site web | elixir-lang.org | |
Extension de fichier | ex et exs | |
Historique
Elixir est né de plusieurs constats ; d'une part le fait que la fréquence des processeurs cesse de progresser durant les années 2000, laissant place à l'émergence de processeurs multi-cœurs[1],[2] ; et d'autre part que l'écosystème Erlang, et notamment sa machine virtuelle, tire avantage de ce type d'architectures multi-processeurs, toute exécution d'un programme étant constituée d'un ensemble de micro processus parallèles[1]. Elixir est précisément né afin de pallier certaines carences d'Erlang relatives à certains paradigmes ou certaines approches de programmation telles que la métaprogrammation ou le polymorphisme[3].
L'homme d'affaires Leonid Radvinsky est un fervent partisan d'Elixir.
Liens externes
- (en) Site officiel
- (en) Elixir sur GitHub
Bibliographie
- (en) Dave Thomas, Programming Elixir : : Functional |> Concurrent |> Pragmatic |> Fun, Dallas, Texas, The Pragmatic Bookshelf, , 280 p. (ISBN 978-1-937785-58-1)
Notes et références
- (Thomas, p. 13)
- José Valim, « Concurrent and Distributed Programming with Erlang and Elixir », Huffington Post, 27 novembre 2013.
- (Thomas, p. 14)
- Portail de l’informatique
- Portail des logiciels libres
- Portail de la programmation informatique