Some examples of destructuring
let {x,y,_} = {1,4,5}
let guess_type = fn x ->
case x do
1 ->
:number;
3..10 ->
:range;
x::xs ->
:list;
{name = _} ->
:record
end
;;
x::y = [1,2,3] results in x = 1, y = [2,3]
x,y::xs = [1,2,3] results in x = 1, y = 2, xs = [3]
x,y::_ = [1,2,3] results in x = 1, y = 2
Some examples of destructuring
let {x,y,_} = {1,4,5}x::y = [1,2,3]results inx = 1, y = [2,3]x,y::xs = [1,2,3]results inx = 1, y = 2, xs = [3]x,y::_ = [1,2,3]results inx = 1, y = 2