I’ve been a little confused about pattern matching. I see this in use with case statements. It is especially difficult because in Elixir there is no return, every statement returns a value.
This made a difference:
In Elixir, the
= operator is actually called the match operator.
This code is interesting and illuminating:
iex> x = 1 1 iex> 1 = x 1 iex> 2 = x ** (MatchError) no match of right hand side value: 1