
on 15.08.2009 at 1:12 Edward Grace wrote :
it's terribly wrong to overload '^' in such a way Why? The precedence rules? Fair enough - sometimes what's tempting is bad for you, but you still want to try it anyway! because '^' is associated with bitwise xor operator and there is no such operation on vectors it is semantically wrong
w = wedge(u,v); w = cross_product(u,v) please :p Err, that's only true in 3D (vectors of length 3). There's no such thing as a cross product between (say) vectors of length 2,4 or indeed anything else. The cross product is, in effect, a restricted version of the exterior (wedge) product which exists for higher dimensions. if i get the point right consider wedge_product(u,v) or exterior_product(u,v)
-- Pavel