To me, the question is in reverse - why did this method exist in v0.5?
The (only) reason is it was a way of obtaining the outer product of two vectors. You can now do
vector * rowvector for this. In fact, this is still a (specialized) method of
vector * matrix doesn’t make too much sense (outside of MATLAB/Householder notation). You wouldn’t impress a math lecturer with writing B = v.A in an assignment/exam, and it would be a misuse of Dirac notation to write
|psi> H and expect an operator back. The correct things are B = v.wᵀ and
O = |psi><phi|.
Believe me, I pained over this one, but really its not difficult to write
ones(10) * ones(10)' for the outer product (in fact, it’s one less character ). Since the
*(A::AbstractVector, B::AbstractMatrix) method was an error if
size(B, 1) was not
1, it is implied that the programmer knows for sure
B is a 1xN shaped Array, which is guaranteed by