Coding

Elixir – dynamic, functional language

Elixir is a functional, concurrent, general-purpose, open source meta-programming aware language built on top of the Erlang Virtual Machine (BEAM). It mostly imports Erlang’s syntax.

Elixir is a dynamic language with macros that leverages Erlang’s ability to build concurrent, distributed, and fault-tolerant applications with hot code upgrades. It combines the robust functional programming of Erlang with an approach that looks more like Ruby.

Elixir provides a first class macro mechanism, supports polymorphism via protocols (similar to Clojure’s) and many other features while keeping the functional aspects of Erlang.

Features include:

  • Complete and automatic hardware detection.
  • A language targeting Erlang Virtual Machine (BEAM).
  • Protocol-based inheritance.
  • Seamless Erlang integration: zero-penalty Erlang function calls (and vice versa).
  • Meta programming via macros and a first-class AST.
  • Polymorphism via protocols inspired by Clojure.
  • Shared-nothing concurrent programming via message passing (Actor model).
  • Emphasis on recursion and higher-order functions instead of side-effect-based looping.
  • Everything is an expression.
  • Message passing.
  • Pattern matching.
  • Provides both lists, tuples, and a special syntax to create a list of keywords.
  • Support for streams, sets.
  • Support for reducers.
  • Metaprogramming via macros.
  • Unicode support and UTF-8 strings.

Website: elixir-lang.org
Support: Blog
Developer: José Valim
License: Apache License v2

Return to New Programming Languages


Explore Linux

Best Free and Open Source Software - A huge collection of recommended free and open source software covering every major category.
In-depth Linux Software Reviews - Detailed assessments of Linux software covering features, usability and overall quality.

The Big List of Active Linux Distros - An extensive collection of actively developed Linux distributions.
Open Source Alternatives - Alternatives to software and services from Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle and others.
Essential Linux System Tools - Indispensable utilities for monitoring, maintaining and managing Linux systems.
Linux Productivity Tools - Useful utilities for improving productivity and streamlining everyday tasks.
Alternatives to Popular CLI Tools - Modern alternatives to familiar command-line utilities supplied with Linux systems.
Awesome Free Linux Game Tools - Tools, utilities and companion software that improve gaming on Linux.
Machine Learning on Linux - Machine learning and deep learning software, self-hosted applications and practical tools.
Saving Money with Linux - Practical ways to reduce electricity consumption and lower computing costs with Linux.
Linux Candy - Fun, entertaining and sometimes delightfully quirky software from the lighter side of Linux.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted