Why not make dot(u,v)=transpose(u)v rather than transpose(v)u?
This response is not logical!
No, you have misread. If u and v are column vectors (most common convention), then uTv is a scalar and uvT is a matrix.One way generates a scalar and the other way generates an NxN matrix. Which is which depends on whether the vector is a 1xN row vector or a Nx1 column vector.