Don’t even need operator overloading for vectors/matrices. It would be fine if we could simply define new operators (functions with infix notation) and use those. This would allow us to define an operator for matrix multiplication, matrix-vector product, dot product, and cross product.
Having to define these operators as functions with unique text names is extremely ugly and serves no purpose that I can see.