I’m working with arrays of d-dimensional StaticArrays (representing trajectories in d-space, for d a small integer). It seems that standard library functions are not set-up well to deal with this: as a simple example, I can’t find an efficient standard library function to convert this to an N x 3 array (given that zip(arr…) is very slow if arr is long). Is this a sign that in Julia this type of data should be represented in a different way?

# Best practices for handling arrays of points

**simonbyrne**#2

This is explained in the StaticArrays docs:

```
julia> X = [@SArray randn(3) for i = 1:5]
5-element Array{SVector{3,Float64},1}:
[1.7243, 1.74027, 0.152618]
[0.312562, -0.487502, 0.221353]
[1.10307, -1.032, 0.898139]
[-0.158312, -0.230623, 1.10006]
[-1.39961, 1.11121, -1.54268]
julia> reinterpret(Float64, X, (3,5))
3×5 Array{Float64,2}:
1.7243 0.312562 1.10307 -0.158312 -1.39961
1.74027 -0.487502 -1.032 -0.230623 1.11121
0.152618 0.221353 0.898139 1.10006 -1.54268
```

Note that Julia is column-major, so you will get a 3xN array.

**Seif_Shebl**#4

Note that the `typeof`

the output in v0.7 is:

```
julia> reinterpret(Float64, X, (3,5))
3×5 reshape(reinterpret(Float64, ::Array{SVector{3,Float64},1}), 3, 5) with eltype Float64:
```

I know it can be dealt with the same as `3×5 Array{Float64,2}`

but is a bit weird.