Yes indeed.Heater wrote:ejolson,
From the outside it looks like the F-35 project has bitten off more than it can chew, not just from a software perspective.
Certainly big corporate software projects have been failing for decades. See Multics and Fred Brook's famous book "The Mythical Man Month". Heck I have worked on many a cancelled project. We never learn.
I thought you said smart guys. Not tinkerers.No idea about Epiphany. The Wayland developers maintain they are trying to remove cruft and shrink what was X11. I don't know.
C++ does indeed feel like a "grab bag of experimental features cobbled together by tinkerers". Reality is though that the C++ devs, the guys on the standards committee, are not tinkerers. They are seriously smart, experienced, guys from MS, Google, Apple, elsewhere.
Though realy just because it is a standard, does not mean that is how it was designed. Things tend to be in standards because they are widely used already, look at how long C++ was around before there was a standard.
And if we look at the evolution (or is it devolution) of C++ we see what (once named C++) started as a very cohesive and reasonable language, then more "features" were added and added over time by many different people/groups the features that ended up widely used made into the standards (well I doubt templates and STL or similar were used before the standard, do not understand that one).
Same is true for most language standards. Some of them manage to stay cohesive. NONE of them are created by the standards commities.
See what I said in this post above.Somehow the product of a bunch of really smart guys can come out looking like the product of a mad man. How does that happen? See the history of CORBA or XML or HTML/CSS for a similar examples.
That is one I would be surprised if any could answer. Every tool has its advantages and dissadvantages.The question you raise then is: What are reasonable tools?
There is a joke called evolution of a programmer floating around the internet, original author unknown, though many different claims of who it is from. It shows a hello world program, that becomes more and more convoluted and goes from C to C++ to C# in the process with the two most convoluted versions being the "Profesional Programmer", then gets simpler when going to leet, and simpler again to hacker (a one liner that reads C:\>echo Hello World!). Some versions of the joke are slightly modifies, including ones that use the unix # prompt for the echo version.
Look up that joke, it realy does fit, and shows well why I do not like the "Professional Programmer" view of things.
Used to be Coral 66, mandated in the UK for military and government projects.
That got scrapped for Ada. As mandated by the DoD in the USA.
Now it's the turn of C++...
What do you suggest?
Aside: Personally, having worked though the Coral 66 (Military radar) and Ada (Boeing 777) thing. I was amazed and somewhat horrified when I heard they were using C++ for the F-35.