>From performance perspective, how bad it is to use `push!(array, element)` compared to pre-allocating array and setting elements in it?
More generally, how extending arrays works in Julia? (code in array.c <https://github.com/JuliaLang/julia/blob/master/src/array.c> is quite readable, but some high-level description is appreciated)