I'm going through Dave Thomas Programming Elixir book, and I am confused about some of the results in the pattern matching section of the book. In particular, take the following example: [a] = [[1, 2, 3]]
My interpretation is that the match should succeed, but the value of a should be [1, 2, 3]; instead, it is [[1, 2, 3]].
Can someone help explain to me how the result came to be the value of the entire right-hand side of the match operator? Why is the output of a = [[1, 2, 3]] no different than the output of [a] = [[1, 2, 3]]?