.TH NEMESIS 7 .SH A WATCHMAKER Clock's (yes, did I miss somethings?) .RS 5 Yes: Don't be clever. (The watchmaker implies that the computer, his slave, should he ever be clever, should not be clever, and better not work his .IR C++ .) .RS The note says: "Don't be (too) clever" but I (he) can't promounce parentheses :-) .TP 1 (I will use that fact, to describe my own thoughts.) .RE .PP Often: I hate to choose between elegance and efficiency. (That's the reason for Clock's .I C++ affair.) .PP Yes: Language design is a curious mixture of grand ideas and fiddly details. (In the case of his beloved .I C++ it is horrendous name-calling and dough-smooching.) .PP Yes: Without philosophy, language design becomes hacking. .PP Yes: .I C++ is an invisible foundation to everything. (like your mom) .PP Yes, Often: The first solution that's good enough (i.e. .IR C++ ) is rarely the best solution. .PP Often: Remember beautiful .B VASA below (and .IR C++ ). .TP Yes, of course: 'of course' is not a reason. (In (god = x; as in anyone, namely some other world = x, that is used to tell of recognition by this whole world = x) god's name and by his grace we live with it -nevertheless.) .PP .I C makes yourself loose; .I C++ makes you lose yourself. (or something like that) .PP Yes: People who think they know everything really annoy those of us who know we don't. (ah man... what if they really do know though?!) .PP Yes. In the context of programming .RI ( C++ ), not Mathematics: Absolute certainty is a terribly thing. .RS Awe; to know ones love is doomed... .RE .RE .SH VASA .RS 2 the watchmaker .br - * - .RE .br Many/most people in WG21 are working [...] towards non-shared goals. Individually, many -most?- proposals make sense. Together they are insanity to the point of endangering the future of .IR C++ . [...] Hardly any paper contains [...] discussions of the [...] effect in combination with other [...] features in "ordinary code" written by "ordinary programmers". [...] Hardly any contain a serious discussion of objections raised. Every proposal is subject to the law of unexpected consequences: There will be unexpected consequences. .PP We are on a path to disaster though (missing feature 'r') enthusiasm and design-by-committee -or rather "design-by-committees". During the early days of WG21 the story of the Vasa was popular as warning against overelaboration -from 1992: .PP .RS Please also understand that there are dozens of reasonable extensions and changes being proposed. If every extension that is reasonably well-defined, clean and general, and would make life easier for a couple of hundred or thousand .I C++ programmers, were accepted, the language would more than double. We do not think this would be an advantage to the .I C++ community. .PP We often remind ourselves of the beautiful Vasa. It was to be the pride of the Swedish navy [...]. Unfortunately, to accommodate enough statues and guns, it underwent major redesigns and extension during construction. [...] half way across Stockholm harbor a gust of wind blew it over and it sank, killing about 50 people. [...] .RE .PP [...] A relatively modest increase of the Vasa's length and breadth -claimed technically feasible- would have made it stable, so my reading of the story is: Work hard on a solid foundation, learn from experience, and don't scrimp on the testing. .PP The foundation in C++11 is not yet complete, and C++17 did little to make our foundation more solid, regular, and complete. (Both did the exact opposite.) [...] .I C++ could crumble under the weight of these -mostly not quite baked- proposals. We should not spend most our time creating increasingly complicated facilities for experts, such as ourselves. .PP We need a reasonably coherent language that can be used by "ordinary programmers" whose main concern is to ship great applications on time. We now have about 150 cooks; that's not a good way to get a tasty and balanced meal. .PP We are on the path to something that could destroy .IR C++ . We must get off that path! .RS 2 - * - .RE .PP .I C++ is a very "handy" tool.