Discussion: Incorporating Erlang/OTP 21 map guards in Elixir

No, we changed the name of a couple of them. elem and put_elem for example. We can’t adopt the Erlang names for map because our semantics for get mean returning nil if a key is not found. The “correct” name would be map_fetch!/2. We also need to swap the argument order.

I actually meant maps, lists and tuples patterns. Good catch!

This is a very good point that we have discussed internally but I did not include in the proposal, so thank you for bringing this up. I don’t think we should allow those in guards because remotes are generally disallowed. So this would also be seen as a special case too.

5 Likes