What’s new in the Erlang VM-based Elixir language

Code formatting and compiler diagnostics are the focus of the functional language’s new version

What’s new in the Erlang VM-based Elixir language
K. Lee

Version 1.6 of Elixir, a dynamic functional language that uses Erlang VM, will have improvements for code formatting and compiler diagnostics. The production version should be avaliable in late January.

Intended for the development of easily scalable and maintainable applications, the open source Erlang code runs in lightweight execution threads that are isolated; information is exchanged among these threads through messaging.

Where to download Elixir

You can install Elixir from GitHub. The Elixir source code is on GitHub as well.

New features in Elixir 1.6

Elixir 1.6 is slated to include:

  • A code formatter to automate the styling of code bases into a unique, consistent layout, making code easier to write and read. An accompanying mix format task adds automatic formatting to projects.
  • Changes in compiler diagnostics to make it easier to integrate with editors.
  • The separate DynamicSupervisor module allowing child processes to be started dynamically. Supervisors in Elixir are responsible for starting, stopping, and restarting child processes when something is amiss. Sometimes, children of a supervisor are not known upfront but started dynamically. The new module replaces a strategy known as simple_one_for_one, which changed the semantics of the supervisor around initialization and shutdown.
  • Improvements to the mix xref task, which provides information about dependencies among modules and files in an application. With Elixir 1.6, developers will be able more easily digest the vast amounts of data produced.

Features planned for Elixir 1.7

For the later Elixir 1.7 release, stream data is expected to be the major new feature. It will provide property-based testing and sample data generation. Stream data already has been implemented in a beta form, via a library.

Copyright © 2018 IDG Communications, Inc.