Nevertheless it would be useful if everyone knew which "arrows" mean subtyping vs. reference vs. ownership vs. instantiation, and which boxes mean action vs. object/class, etc. If you only have "arrow" and "box", you have to explain what you mean by them in the specific instance every time.
Also, UML does have some nice graphical notation like ——(o—— to denote interface and implementation (sockets and plugs).