GENERIC INTERFACE Vector4Extras(VRep); (* Vector operations specific to 4-dimensional vector spaces: *) PROCEDURE Det(READONLY a, b, c, d: VRep.T): LONGREAL; (* Returns the determinant of the matrix whose rows are "a", "b", "c". *) PROCEDURE Cross(READONLY a, b, c: VRep.T): VRep.T; (* The cross product of "a", "b", "c" --- that is, a vector "r" orthogonal to all three, such that "Det(a, b, c, x) = Dot(r, x)" for any vector "x". *) END Vector4Extras.