No, again, you never need a certain technology. You do take into account the costs and benefits of each available technology when applied to the problem domain.
I did not say that C++ is "just as easy as Perl". That's exactly where you are missing the point. What I am saying is that until you abandon the mistaken notion that you "need" a certain technology, you are never going to correctly weigh the costs and benefits of various technologies when applied to the project.
The attitude of "I need X" leads into disasterous paths where you spend more time getting X working on a new platform than it would have taken to just to do the project using the already available, but suboptimal, technology Y.
Yes, if I were in your shoes, I'd use Perl too. That's not the point. The point is that if you say "I need Perl", then you end up paralysed when you end up on a platform were Perl is not available.
That's exactly what I am talking about here. I saw a very large project sucked down into a black hole because the guys in charge decided that they "needed" full OOP with dynamic classes. They then proceded to burn many man-years trying to shoehorn that into C++, when if they'd just sat down and written the damn thing in straightforward C/C++, they'd have been done.
Again, we are not talking about "Perl is better that C++" here. We are talking about the attitude of "what tool in my toolbox will best solve the problem". And you are damn right that I'd have very strong words with anyone who came to me and said "I can't do the project, because I need that shiny new tool". No, you don't "need" it. Compare the cost of aquiring the tool with the cost of not using the tool.
It'd take you two days to write a C++ header parser in Perl. Suppoes it'd take you two weeks to write a C++ header parser in C++. Now suppose that you are working on a platform without Perl, and that it will take you three weeks to port Perl. (We are talking hypotheticals here.)
In such a case, is it smarter to use C++ or Perl for the project? (Assuming it's a one-off.)
That's the point. You don't "need" Perl. Perl is better, in a quantifiable way, for a certain set of problem domains. Those are two very, very different statements. To mistake one for the other is a massive mistake.
This is k5. We're all tools - duxup
[ Parent ]