Because it is a Vector of Arrays. To elaborate, [f(i) for i in 1:N] is an array comprehension and will result in a 1D Array (aka a Vector) of length N (or size (N,)). The element type of the Vector will be determined by the output of f(i). So in your case, you end up with a Vector of Matrixes.
One way is
b2 = reduce(hcat, (a.^i for i in 1:3))