Re: standard vs. hand crafted loops
Daniel T. wrote:
Andrei Polushin wrote:
If the usage is trivial, no matter how trivial or complex the component
is: such component will be reused anyway. This is the case for strlen,
strcpy, std::copy, and std::find - their usage is trivial, so we don't
care about their complexity.
But when using the component will require some additional work,
examining its complexity is valid point: we may consider replacing the
component with hand-written code, which might be better when the usage
is too complex and the component is too trivial.
It seems to me that when Mr. Richter said, "My major concern on the STL
algorithms is that the job they perform is so trivial that you can
really write them up yourself..." he was saying that the job the
algorithm performs is trivial, not that the way it was used was too
complex. In other words, you are establishing a different argument.
In other words, you are ignoring the common sense in his phrase,
establishing formal discussion while catching on informal arguments.
I must ask, why do you consider creating a function "usage [that] is too
complex"? Isn't that exactly what we do on a regular basis? And how do
you define "complex"? Cyclomatic Complexity? Lines of code? or something
else?
Complexity is the weighted sum of things human have to deal with at
once.
Human is the organic matter with the ability to handle a limited number
of things at once. To overcome that limitation, human tends to group
several things together and handle them as yet another thing. This is
"exactly what we do on regular basis".
But we should not "multiply things beyond necessity."
--
Andrei Polushin
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]