Elixir
Details about the support for Elixir within PureType
Elixir is a dynamic, functional language for building scalable and maintainable applications, running on the Erlang virtual machine.
Checks
Examples of checks for the language include the following areas:
if conditions vs guards - guards are a concept not always familiar to new engineers. Suggesting a rewrite of a function whose body is surrounded by an if condition is helpful for introducing the concept and spotting the pattern later on
comprehensions vs Enum pipelines - filter + map + reduce pipelines are easier to read and faster; pipelines can evolve into this form over time but typically are not spotted by those not familiar with the form
Map lookup - there are many different forms of map lookup, suitable for various forms. Given enough context, PureType can analyze and suggest the best option and ensure developers are familiar with all forms
bang vs non-bang functions - the intended error behaviour of using the incorrect form of the function can be surprising, or result in more error handling code than strictly necessary
Supported versions
All versions of Elixir are supported. Because only the structure of the code is reviewed, there is no issues with code intended to be run using an older Elixir version.
File extensions
.ex
, .exs
.heex
is currently not supported.
Last updated