Résumé
Elixir is a functional, concurrent, high-level general-purpose programming language that runs on the BEAM virtual machine, which is also used to implement the Erlang programming language. Elixir builds on top of Erlang and shares the same abstractions for building distributed, fault-tolerant applications. Elixir also provides tooling and an extensible design. The latter is supported by compile-time metaprogramming with macros and polymorphism via protocols. The community organizes yearly events in the United States, Europe, and Japan, as well as minor local events and conferences. José Valim is the creator of the Elixir programming language, a research and development project created at Plataformatec. His goals were to enable higher extensibility and productivity in the Erlang VM while maintaining compatibility with Erlang's ecosystem. Elixir was aimed at large-scale sites and apps. Elixir uses features of Ruby, Erlang, and Clojure to develop a "high-concurrency" and "low-latency" language. Elixir was designed to handle large data volumes. Elixir is used in the telecommunication, eCommerce, and finance industries. On July 12, 2018, Honeypot released a mini-documentary on Elixir. Each of the minor versions supports a specific range of Erlang/OTP versions. The current stable release version is . Compiles to bytecode for the BEAM virtual machine of Erlang. Full interoperability with Erlang code, without runtime impact. Scalability and fault-tolerance, thanks to Erlang's lightweight concurrency mechanisms Built-in tooling for managing dependencies, code compilation, running tests, formatting code, remote debugging and more. An interactive REPL inside running programs, including Phoenix web servers, with code reloading and access to internal state Everything is an expression Pattern matching to promote assertive code Type hints for static analysis tools Immutable data, with an emphasis, like other functional languages, on recursion and higher-order functions instead of side-effect-based looping Shared nothing concurrent programming via message passing (actor model) Lazy and async collections with streams Railway oriented programming via the with construct Hygienic metaprogramming by direct access to the abstract syntax tree (AST).
À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.