Solved

What is orthogonal?

Posted on 2004-08-18
2
205 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:Tom Knowlton
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
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

Creating Instructional Tutorials  

For Any Use & On Any Platform

Contextual Guidance at the moment of need helps your employees/users adopt software o& achieve even the most complex tasks instantly. Boost knowledge retention, software adoption & employee engagement with easy solution.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

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…
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
There's a multitude of different network monitoring solutions out there, and you're probably wondering what makes NetCrunch so special. It's completely agentless, but does let you create an agent, if you desire. It offers powerful scalability …
Monitoring a network: how to monitor network services and why? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the philosophy behind service monitoring and why a handshake validation is critical in network monitoring. Software utilized …
Suggested Courses

624 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