April 29, 2022

On Friday, 29 April 2022 at 04:09:40 UTC, Araq wrote:

>

On Friday, 29 April 2022 at 01:33:36 UTC, Walter Bright wrote:

>

On 11/2/2021 11:48 AM, Paulo Pinto wrote:
...
Um, Zortech C++ was the first native C++ compiler on DOS in 1987. (The existing ones were all cfront based, and were terribly slow.)

From D&E:

"The size of this overhead depends critically on the time needed to read and write the intermediate C representation and that primarily depends on the disc read/write strat- egy of a system. Over the years I have measured this overhead on various systems and found it to be between 25% and 100% of the "necessary" parts of a compilation. I have also seen C++ compilers that didn't use intermediate C yet were slower than Cfront plus a C compiler."

That's not "terribly slow". And before you bring up "templates are slow to compile", in 1987 cfront did not have templates.

Is there evidence that Zortech C++ was one of the "various systems" mentioned in your quote? Is it known that "necessary parts of a compilation" were implemented to run at competitive speed? (as opposed to, say, 4X slower than your best effort)

...

> >

No, you won't find this account in the D&E of C++ histories, but it's what actually happened.

Well that's the history as you remember it and Stroustrup does list "1st Zortech C++ release" in June 1988. I cannot say if your "90%" figure is correct or not.

Is your intent here to make clear that you have no access to hard data or that you don't believe Walter? Both? Other?

April 29, 2022

On Friday, 29 April 2022 at 05:37:40 UTC, Bruce Carneal wrote:

>

Is your intent here to make clear that you have no access to hard data or that you don't believe Walter? Both? Other?

My intent is to get hard data from Walter.

April 29, 2022
On Friday, 29 April 2022 at 01:33:36 UTC, Walter Bright wrote:
> On 11/2/2021 11:48 AM, Paulo Pinto wrote:
>> Then on the PC and Mac it quickly got the love from Apple (replacing Object Pascal with C++), IBM, Microsoft, Borland, Watcom,  SGI, Sun, HP, among others, and naturally Digital Mars/Symantec as well.
>
> Um, Zortech C++ was the first native C++ compiler on DOS in 1987. (The existing ones were all cfront based, and were terribly slow.) ZTC++ produced the first boom in use of C++, accounting for perhaps 90% of C++ use.
>
> This popularity lead to Borland dumping their own OOP C and going with C++, which then led to Microsoft getting on the bandwagon.
>
> This popularity then fed back into the Unix systems.
>
> No, you won't find this account in the D&E of C++ histories, but it's what actually happened.

That is my experience as I lived through it during 1980's Portuguese view of the computing world.

For example, I never saw Zortech being sold in any computer shop, while Watcom, Borland and Microsoft compilers were available all over the country. Symantec ones later became available in the mid-90's.
April 29, 2022

On Thursday, 28 April 2022 at 13:50:19 UTC, Ola Fosheim Grøstad wrote:

>

On Thursday, 28 April 2022 at 12:33:48 UTC, SealabJaster wrote:

>

Regrettably this community doesn't see much value in syntax sugar, and are fine with more bulky library solutions instead.

It is possible to have syntactical sugar for library solutions if you have clearly defined protocols. Like D and C++ do with for-loops over containers.

It is in many ways the best approach, but the question is how to define the right protocol mechanism.

I think his point was that D seems to favor library-only solutions in a lot of cases and then the syntactic sugar is never added properly.

No matter how good your library solutions are then you can never implement async/await in a clear fashion without the compiler emitting you a state machine for it.

April 29, 2022
On Friday, 29 April 2022 at 07:32:09 UTC, Paulo Pinto wrote:
>
> That is my experience as I lived through it during 1980's Portuguese view of the computing world.
>
> For example, I never saw Zortech being sold in any computer shop, while Watcom, Borland and Microsoft compilers were available all over the country. Symantec ones later became available in the mid-90's.

That is also my experience. Microsoft, Borland and Watcom were big but I never heard of Zortech. Later on in the 90s I did see the Digital Mars C++ compiler.
April 29, 2022

On Tuesday, 2 November 2021 at 17:27:25 UTC, Dr Machine Code wrote:

>

It got asked on reddit sub but for those that aren't active too, I'd like you opinions. Please don't get me wrong, I also love D, I've used it everywhere I can and I'd say it's my favourite language (yes I have one...) but I'm as as the reddit's OP, trying to understand why it's unpopular. Rust and Go seeming to be getting more and more users. I think it's due to large ecosystem and the big corporations with deep pockets that pushes them. But I'd like to know you all opinions

Two things:

  1. This question keeps popping up. There must be a reason.

  2. On reddit, a poster wrote:

"D was used as a POC to show some of the functionality proposed."

I don't know to which extent this is true, but D is certainly more of a research than a real world language. What galls ex-users is that this is not communicated clearly to newcomers. Instead, you have to get deep into D (which, in fairness, has its merits, because you learn a lot) before you realize that your projects will forever be hampered by D's shortcomings. Same shortcomings are never really addressed because D is, at its core, a CS research language (which is slowly losing its edge over mainstream languages like C#, C++ etc.). The language should not be sold as production ready. I remember the "update lottery" whenever a new version was available: will it break my code or not? This is a situation you find yourself in with languages that are below 1.0 and then you know what you're in for. However, D is already 2.+. The only explanation is that in reality D is still at a stage that is below 1.0. I've been an early adopter with some PLs and one OS, it's always a bit of a gamble and it takes some effort. However, those PLs and the OS have matured and stabilized. D never ever matures or stabilizes, it just goes on and on and on being between 0.1 and 0.9. This made it impossible for me to create real world applications. Apart from making my work unnecessarily difficult, how could I justify the use of an eternal 0.x language to superiors and users? break (D) { switch; }

April 29, 2022
On 4/28/2022 9:09 PM, Araq wrote:
> On Friday, 29 April 2022 at 01:33:36 UTC, Walter Bright wrote:
>> Um, Zortech C++ was the first native C++ compiler on DOS in 1987. (The existing ones were all cfront based, and were terribly slow.)
> 
>  From D&E:
> 
> "The size of this overhead depends critically on the time needed to read and write the intermediate C representation and that primarily depends on the disc read/write strat- egy of a system. Over the years I have measured this overhead on various systems and found it to be between 25% and 100% of the "necessary" parts of a compilation. I have also seen C++ compilers that didn't use intermediate C yet were slower than Cfront plus a C compiler."
> 
> That's not "terribly slow". And before you bring up "templates are slow to compile", in 1987 cfront did not have templates.
> 
> "The earliest implementation of templates that was integrated into a compiler was a version of Cfront that supported class templates (only) written by Sam Haradhvala at Object Design Inc. in 1989."

Zortech C++ was about 4 times faster than cfront based C++ on DOS machines. This was my measurements. I agree it had nothing to do with templates. Personally I doubt Stroustrup had ever tried ZTC++.

I was wrong, ZTC++ came out in 1988, not 1987.


>> ZTC++ produced the first boom in use of C++, accounting for perhaps 90% of C++ use.
>>
>> This popularity lead to Borland dumping their own OOP C and going with C++, which then led to Microsoft getting on the bandwagon.
>>
>> This popularity then fed back into the Unix systems.
>>
>> No, you won't find this account in the D&E of C++ histories, but it's what actually happened.
> 
> Well that's the history as you remember it and Stroustrup does list "1st Zortech C++ release" in June 1988. I cannot say if your "90%" figure is correct or not.

DOS computers were where the great mass of programmers were at the time. 90% is likely conservative. The programming magazines were all focused on DOS programming, the articles about C++ were for DOS C++ programming.

Before ZTC++, the traffic on comp.lang.c++ and comp.lang.objectivec was about the same, and not very much. After ZTC++, the traffic in comp.lang.c++ took off, and comp.lang.objectivec stagnated.
April 29, 2022
On 4/28/2022 11:11 PM, Araq wrote:
> My intent is to get hard data from Walter.

https://dl.acm.org/doi/abs/10.1145/3386323
April 29, 2022
On 4/29/2022 12:32 AM, Paulo Pinto wrote:
> For example, I never saw Zortech being sold in any computer shop, while Watcom, Borland and Microsoft compilers were available all over the country. Symantec ones later became available in the mid-90's.

ZTC was only sold mail order.
April 29, 2022

On Friday, 29 April 2022 at 07:56:15 UTC, bauss wrote:

>

I think his point was that D seems to favor library-only solutions in a lot of cases and then the syntactic sugar is never added properly.

No matter how good your library solutions are then you can never implement async/await in a clear fashion without the compiler emitting you a state machine for it.

The dirty secret here is that the code quality of the DMD fronted has deteriorated to the point where it is basically impossible to do a correct, complete implementation of any non-trivial language feature. So we can either have a library solution that works, but has ugly syntax; or we can have a language solution that has nice syntax, but doesn't work.