Solved

What is orthogonal?

Posted on 2004-08-18
2
197 Views
Last Modified: 2010-04-15
In C#, how can something be "orthoganally" related to something else?

For example, this book I am reading makes the following statement:

"Every collection provides some method for iterating through the contents of the container.  In the C++ STL [[[(Standard Template Library?)]]] world, there exists the concept of an iterator; this is ORTHOGANAL to the concept of an enumerator in the world of COM.  Anyone who has had the pleasure of implementing the IEnumVARIANT interface will appreciate the ease of implementing the IEnumerable interface along with providing an IEnumerator interface available in the .NET Framework."

I take it from this statement that orthogonal is "opposite to" ????

The author is being sarcastic about the "pleasure of implementing the IEnumVARIANT interface".........so this is really hard to do?????


Thanks,

Tom
0
Comment
Question by:knowlton
2 Comments
 
LVL 4

Expert Comment

by:NTAC
ID: 11837416
That is what orthogonal means, and from the way I read it the author is indeed trying to be funny.  I've never used the IEnumVARIANT interface--so I cannot comment.
0
 
LVL 4

Accepted Solution

by:
pashcroft earned 500 total points
ID: 11838217
Actually, orthogonal does not mean 'opposite to' (If you want a real word-play, it's meaning is almost opposite to 'opposite').

It means more like 'equivalent from a parallel standpoint' (it comes form maths, to do with right-angles / parallels) - ie its saying that the enumerator is to com what the iterator is in c++ stl.

The sarcasm is indicating that making collections implement the IEnumerable (which enables enumerating through a collection) is really so much easier now with C#.  Which is really a good thing.  I.e forget about the IEnumVARIANT stuff, breathe a sigh of relief, and experience the wonder and power of IEnumerable and IEnumerator.  It is also subtely indicating that you will need to implement IEnumerator much less frequently than the more common IEnumerable.  An IEnumerator returns an iterator itself (the thing that iterates throught the collection) and therefore has more methods to implement for controling the iterator, while the IEnumerable simply provides an iterator via its single GetEnumerator() method.

btw, the author's right :)
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Bit flags and bit flag manipulation is perhaps one of the most underrated strategies in programming, likely because most programmers developing in high-level languages rely too much on the high-level features, and forget about the low-level ones. Th…
Introduction This article series is supposed to shed some light on the use of IDisposable and objects that inherit from it. In essence, a more apt title for this article would be: using (IDisposable) {}. I’m just not sure how many people would ge…
This tutorial demonstrates a quick way of adding group price to multiple Magento products.
This video demonstrates how to create an example email signature rule for a department in a company using CodeTwo Exchange Rules. The signature will be inserted beneath users' latest emails in conversations and will be displayed in users' Sent Items…

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now