Re: standard vs. hand crafted loops
In article <1147512350.709207.31700@y43g2000cwc.googlegroups.com>,
"Andrei Polushin" <polushin@gmail.com> wrote:
Daniel T. wrote:
Maciej Sobczak wrote:
Daniel T. wrote:
Do you also argue against using strlen and strcpy because, "the job they
perform is so trivial that you can really write them up yourself"?
strlen and strcpy do not need any customization and work "out of the
box". std::copy, std::find, etc. are also of this kind and are extremely
useful.
What does that have to do with how trivial or complex the job being
performed is? You said that you don't like using the standard algorithms
because "the job they perform is... trivial." Do you still stand by that
reason?
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.
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?
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]