@Richard Hodges
Thank you for your reply Richard. I really appreciate it.
>> There is a counter position, that C++ has only survived because of the time and effort put in by the individuals who make up the “committee”.
No Richard. C++ survives only because there is so much codebase(mostly legacy) written in it that it is simply not doable  to drop it and switch to a better language (Rust springs to mind) in one month/year/decade. Even COBOL is still in use. Not because of individual users but precisely by the fact that there are still vast areas where COBOL was used and nobody has/wants to put effort/time/money.

As for what features C++ mostly lacks I'm not going to answer but I tell you what it has too much. Too many committee members. Most of them build their ego/carrier (how nice it looks on CV: a member of a committee) whilst destroying C++. That's why Bjarne in numerous of his speeches was angry and openly expressed his feelings about it and addressed that very issue. He even wrote a paper about it, I don't remember now but I think it was called "Don't sink the Vase".
Human vanity and greed destroyed vast numbers of beautiful things. C++ is right now sharing that fate.

On Thu, Jul 9, 2020 at 9:43 AM Richard Hodges via Std-Discussion <std-discussion@lists.isocpp.org> wrote:


On Thu, 9 Jul 2020 at 08:23, Artur Czajkowski via Std-Discussion <std-discussion@lists.isocpp.org> wrote:

@Thiago Macieira via Std-Discussion

" The standard doesn't
care if the algorithms rerquired to implement it are quadratic or cubic or
exponential. " [Misspelling original]
Pity, because standard should care about things of such importance.
You (the committee) are destroying the C++ language.

To be fair, I completely understand your view as I used to share it. Users of C++ are certainly frustrated by the apparent opaqueness of the standardisation process.

There is a counter position, that C++ has only survived because of the time and effort put in by the individuals who make up the “committee”.

Most of these people care deeply about the language. Often to the extent where progress is not made in case of “acting in haste, repenting at leisure”. 

Not all of these people agree with each other on all design and implementation decisions. Or even for that matter on whether a feature should be in the language.

I think that one of the benefits of the headless, collegiate approach is that matters get discussed thoroughly and the overall discipline of computer languages is furthered (although sadly often behind closed doors, so the wider user base do not witness and therefore benefit from the knowledge gained during these sessions).

One of the downsides is that there is no firm leader who can say, “the users have spoken - they shall have their feature”, which is entirely possible in a proprietary language owned exclusively by a huge corporation.

Also there is no way for the user base to communicate the features they need to WG21, other than writing a paper - which is a specialised skill in itself.

It’s important to understand that writing compilers is not a profit-motivated activity.

(Almost) nobody has paid for a compiler since the turn of the millennium. Every program you compile is courtesy of some individual or corporation who chose to donate time and/or money. 

For this reason, there is no fundamental driver for providing “customer service”. Customer service is a tool for gaining competitive advantage in a contested marketplace. It’s not a fundamental right of humanity.

Out of interest, what feature do you think c++ most sorely lacks?


On Thu, Jul 9, 2020 at 3:53 AM Thiago Macieira via Std-Discussion <std-discussion@lists.isocpp.org> wrote:
On Wednesday, 8 July 2020 18:39:35 PDT Mandeep Sandhu via Std-Discussion
wrote:
> Can someone explain to me why it takes such a long time to compile?
> Keeping the strings to under 5K, makes the program compile in about 8
> secs.

You should ask that question in the GCC mailing list. The standard has nothing
to do with how long compilers take to compile anything. The standard doesn't
care if the algorithms rerquired to implement it are quadratic or cubic or
exponential.

Suggestion: since this is clearly a generated file, instead of using
std::unordered_set, use the gperf application or another perfect hash
generator.

--
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel System Software Products



--
Std-Discussion mailing list
Std-Discussion@lists.isocpp.org
https://lists.isocpp.org/mailman/listinfo.cgi/std-discussion


--
--
Std-Discussion mailing list
Std-Discussion@lists.isocpp.org
https://lists.isocpp.org/mailman/listinfo.cgi/std-discussion
--
Richard Hodges
office: +442032898513
home: +376841522
mobile: +376380212

--
Std-Discussion mailing list
Std-Discussion@lists.isocpp.org
https://lists.isocpp.org/mailman/listinfo.cgi/std-discussion


--


Best regards
Artur Czajkowski

https://marketplace.visualstudio.com/items?itemName=GitAtomic.GitAtomic