note
Masem
Having just worked on a data analysis that involved orthogonality, I just want to point out that "orthogonal functions" does not necessarily mean functions do one task, etc.
<P>
A set of orthogonal items means that between any two items, there is no overlap of their 'function'; for vectors in 3D Euclidean space, this means that no more than 3 vectors can be orthogonal to each other, and that for 3 vectors, they must be at right angles to each other.
<P>
In programming, this corresponds to functions having no utility that overlap. That is, if you have a function that reads, parses, and prints data, and another one that just prints data, these are not orthogonal.
<P>
Now, good programming practice, planning, and repeative refactoring are similar to mathematical tools that can help find the optimal orthogonal set of functions/vectors/whatever. That is, with programmming, several rounds of refactoring will help you to not only identify a set of orthoganal functions, but functions that also perform only small tasks such that they can be combined in some manner to do complex ones.
<P>
So while the statement above is not *wrong* per se, it's not entirely accurate, and I'm just trying to clear that up :-)
<P>
<P>
-----------------------------------------------------
<BR>
<I>
<A HREF="http://mneylon.masemware.com/">Dr. Michael K. Neylon</A> - <a href="mailto:mneylon-pm@masemware.com">mneylon-pm@masemware.com</a>
||
"You've left the lens cap of your mind on again, Pinky" - The Brain
<BR>
<FONT COLOR="#808080"><I>It's not what you know, but knowing how to find it if you don't know that's important</I></FONT>
</I>
116172
116172