It’s interesting to see Bjarne Stroustrup complaining that C++ is getting too complex - from its inception it’s always been one of the harder languages to fully comprehend so it seems unsurprising that it’s becoming even more intractable over time. And I say this as a C++ programmer.
There are people who concluded from the Vasa story that all incremental improvement is a bad
strategy. However, if the Vasa had been sent to sea as originally designed, it could not have served its
purpose. Being under-gunned, someone would have sent it to the bottom full of holes. Being somewhat ordinary, it would have failed in its representative (image) role. Recent research has shown that a relatively modest increase of the Vasa’s length and breadth (claimed technically feasible) would have made it stable, so my reading of the Vasa story is: Work hard on a solid foundation, learn from experience, and don’t scrimp on the testing.
At risk of pushing the nautical metaphor a bit too far, it looks like Bjarne may have snatched defeat from the jaws of victory with this analysis: while presuming that perhaps this time the Vasa of C++ will float, the application world is eating its lunch with PT boats in the form of Javascript.
Small nimble ugly languages trump large ones for most purposes.
It’s interesting to see Bjarne Stroustrup complaining that C++ is getting too complex - from its inception it’s always been one of the harder languages to fully comprehend so it seems unsurprising that it’s becoming even more intractable over time. And I say this as a C++ programmer.
Cutting free from the ball and chain makes it easier for committee members to add more complexity.
At risk of pushing the nautical metaphor a bit too far, it looks like Bjarne may have snatched defeat from the jaws of victory with this analysis: while presuming that perhaps this time the Vasa of C++ will float, the application world is eating its lunch with PT boats in the form of Javascript.
Small nimble ugly languages trump large ones for most purposes.
and this is why all kernel development is today done in Lua.