This is because of the parallel assignment syntax .
a = [[:a, :b, :c]]
, a.each , [: a,: b,: c].
:
(x, y), z = [:a, :b, :c]
(x, y) - , : a x , z : b.
:
(x, y) = [:a, :b, :c]
(x, y) [: a,: b,: c], x, y : a : b .
, args + optional args (keyword args) + rest args, . "", .
:
(a,b) = 1,2
=> [1, 2]
(a,b)=[1,2]
=> [1, 2]
, .