- Flip the switch on the concatenation deprecation (#8599)
- Deprecate partial linear indexing (#5396, #14770)
- ReshapedArrays (#10507, #15449, https://groups.google.com/d/msg/julia-dev/7M5qzmXIChM/kOTlGSIvAwAJ)
- Julia native bounds checking and removal (#7799, #14474)
- Drop dimensions indexed by a scalar (#13612)
- Full APL slicing (#15431)
- Disallow indexing with extra trailing singletons?
- Return slices as views (#9150).
- Allow any index type in non-scalar indexing (#12567)
- Transpose returns a covector or transpose type (#4774)
- Ditch special lowering of Ac_mul_Bt, use dispatch instead. (#5332)
- Remove default no-op behavior for (c)transpose (#13171)
I realize I didn't spell out the connection between ReshapedArrays and linear algebra:
StridedArray;reshape(sub(A, indexes...), sz)creates a copy (returning anArray, which isStrided)In a future world,
reshape(sub(A, indexes...), sz)isn'tStridedand so can't be passed to BLAS. Hence we rely on our fallbacks for linear algebra, which do indexing likeA[i,j]and this will be slow.The problems only crop up when you mix
reshapeandsuborslice. IfA[:, 2:3]is going to not be a view in julia-0.5, this may not be sufficiently common to be a blocker.