
Topher Cooper wrote:
5) /Object-Oriented vs Generic Interface?/ -- I'm not going to take sides here, but it seems unlikely that the small overhead of run-time-bound calls would make much of a difference except in the limited case of a large network of simple components (e.g., a large, low-level, logic gate system) with high sequentiality and very little I/O or logging. In any other circumstances, I would say that the time for the indirection would be completely swamped by the component internals, by other kinds of system overhead and by I/O. That doesn't mean that generic programming isn't preferable but only that the performance overhead of virtual calls isn't an argument for it unless one can show that the non-monitored, large logic-gate type system requiring high-performance is an important design case.
Thank you for your considerate remarks, Topher. I've isolated the part above because I thought it needed an immediate response, but rest assured that I found the rest of your email valuable as well. My response: I think you're right and I stand corrected. Admitting this also makes me more consistent with my recent reply to Dave Abrahams [1]. I apologise, especially to Marcus Tomlinson, for making the presumed overhead of OOD seem more important than it is. -Julian ______ [1] http://lists.boost.org/Archives/boost/2012/12/199196.php