On 4/16/2010 10:41 PM, Andrei Alexandrescu wrote:
Generally I'd strongly suggest making operations free generic functions instead of members.
I disagree on this one. It unnecessarily adds more names to an outer namespace and makes code less readable:
vec1.cross(vec2).project(vec3).length(); vs: length(project(cross(vec1, vec2), vec3);The first reads naturally while the second is more like polish notation and is easier to forget parentheses, as I did.
