Let’s talk about type checking of Elixir. No-no, it’s no a channel about Elixir yet but I still want to write down some of the research I do in the language.

  • Dialyzer is an Erlang type checker. It’s very forgiving and so not so helpful as most of other type checkers in other languages. You can read more about it in Type Specifications and Erlang section of “Learn you some Erlang”. For Elixir, it is integrated in Elixir language server and also available as dialyxir convenience wrapper.
  • Gradualizer is a new type checker for Erlang, more strict and gradual. It’s still in Alpha but looks promising. For Elixir, it’s available as gradient.
  • TypeCheck is an Elixir library to check types at runtime.