Elixir: a correspondência de padrões funciona de maneira diferente para tuplas e mapas
No Elixir, se eu tentar corresponder às duas tuplas a seguir:
{a} = {1, 2}
Eu recebo um erro de correspondência. Mas se eu fizer o mesmo em dois mapas:
%{x: a} = %{x: 1, y: 2}
Funciona bem, ea
vincula a 1. Posso ver por que a correspondência das duas tuplas deu um erro, mas por que a correspondência dos mapas não deu um erro?