November 04, 2021

On Thursday, 4 November 2021 at 16:36:39 UTC, Dukc wrote:

>

I see - that is what this thread is about after all. But you didn't finish your explanation to make any point about language adoption.

I tried to point out that having multiple perspectives isn't negative, even if some turn out to have only a negligible effect.

To increase adoption I think one should take a look at all the perspectives that have been presented in the thread, because I think they all are contributing factors. But one also has to think about multiple groups/classes of programmers and prioritize the groups that are most likely to address the worst weak spot (eco system).

If I personally were looking for an alternative to C++ today I probably would have given Rust a spin first, because they seem very focused and determined to support lower level programming and make it more productive than C++. So for me a clear vision would be the first thing to look for in addition to the technical.

November 04, 2021

On Thursday, 4 November 2021 at 16:45:34 UTC, Ola Fosheim Grøstad wrote:

>

I tried to point out that having multiple perspectives isn't negative, even if some turn out to have only a negligible effect.

To increase adoption I think one should take a look at all the perspectives that have been presented in the thread, because I think they all are contributing factors.

In the brainstorming sense, yes. But in the "contributes to evidence in favour of this position", no, unless backed up with transparent reasoning.

Note, I'm assuming a theard where people question the general strategy of a language. If discussing a particular language feature or other improvement it's different since it's more concrete and the facts can be reasoned about by anyone.

November 04, 2021

On Thursday, 4 November 2021 at 16:58:05 UTC, Dukc wrote:

>

Note, I'm assuming a theard where people question the general strategy of a language. If discussing a particular language feature or other improvement it's different since it's more concrete and the facts can be reasoned about by anyone.

Ok, but again, it calls for soul searching if current users of the language most likely would not have landed on D if they started with no prior knowledge and experience. So, that means the "market position" has changed.

So, how do you then get back to a position where you have enough hardcore programmers to develop something like an application framework that would make the language more attractive to a broader audience?

You would need the same level of hardcore enthusiasm that lead a group of developers to build Tango.

How do you get there?

November 04, 2021

On Thursday, 4 November 2021 at 17:11:34 UTC, Ola Fosheim Grøstad wrote:

>

Ok, but again, it calls for soul searching if current users of the language most likely would not have landed on D if they started with no prior knowledge and experience. So, that means the "market position" has changed.

So, how do you then get back to a position where you have enough hardcore programmers to develop something like an application framework that would make the language more attractive to a broader audience?

You would need the same level of hardcore enthusiasm that lead a group of developers to build Tango.

How do you get there?

I don't think I'm any better than the average forum ranter to answer that. I do have technical experience from D so I consider myself qualified to contribute opinions on specific proposals or decisions made in monthly meetups. But to suggest a brand new general strategy that I would feel to have better chances than the current one, not so much.

November 05, 2021

On Wednesday, 3 November 2021 at 23:33:05 UTC, arco wrote:

>

On Wednesday, 3 November 2021 at 23:13:34 UTC, Adam Ruppe wrote:

>

On Wednesday, 3 November 2021 at 23:08:54 UTC, arco wrote:

>

This first one is historic: for a long time, D was not open source

This is not true. Really persistent myth but easy to prove that it was GPL'd as early as 2002. gdc's predecessor was out by 2003, also GPL licensed.

But at what point did D become truly usable using open source compilers? GDC was only declared feature complete, supported and merged upstream in GCC 9.0, that is in 2019. Both Go and

I would like to know where you read that GDC wasn't feature complete for nearly 20 years.

>

Rust came with open source, production quality, reference compilers since day 1. It really makes a difference.

Actually, using your logic with GDC, you can say because it isn't merged into GCC, Rust is actually not open source, feature complete, supported, or truly usable.

>

Have you got some information about the early GPL'd compiler? My understanding is that DMD only became open source some time around 2014, was there another early project?

Watch my talk on GDC which covers the timeline of early D compilers (BrightD, OpenD, DLI, GDMD, and a few others). :-)

In short, open source - and more specifically porting to Linux - was always talked about since day one really, and Walter released the source code in 2002 in order to let the community do this. It took about two years before there was eventually one that was almost feature complete - DGCC, later to be known most commonly as GDC.

November 05, 2021

On Friday, 5 November 2021 at 09:16:39 UTC, Iain Buclaw wrote:

>

On Wednesday, 3 November 2021 at 23:33:05 UTC, arco wrote:

>

[...]

I would like to know where you read that GDC wasn't feature complete for nearly 20 years.

[...]

GDC rox

November 05, 2021

On Wednesday, 3 November 2021 at 23:08:54 UTC, arco wrote:

>

Today one can certainly do low level system programming in D, but Rust is a better systems language. One can develop microservices etc. in D, and it might be pretty good for that, but Go is better. D can even be used as a scripting language or one to drive high level logic, but Python is better for that.

Interesting point of view because obviously it isn't the point of view of many in the D community. I'll spare you the details but it is very possible D outperform those in their specialty.

But what you said is indicative of the effectiveness of the stories displayed by those other langages, probably because they were described in terms of benefits: https://www.lumitos.com/en/blog/feature-advantage-benefit-the-fab-formula-for-product-descriptions-that-sell/

All 3 homepages of Rust/Go/Python start with a Benefit with few mentions of Features. It is a conscious marketing effort with relatively standard marketing thinking.

November 05, 2021

On Friday, 5 November 2021 at 13:10:58 UTC, Guillaume Piolat wrote:

>

Interesting point of view because obviously it isn't the point of view of many in the D community. I'll spare you the details but it is very possible D outperform those in their specialty.

I think we need to embrace the idea that there is no single factor, and that D cannot best languages with critical mass in their speciality niches.

One does not have to like Go as a language to understand that Go objectively has a runtime and ecosystem that makes it more suitable for micro services than D; Go is better supported (by cloud providers and by library authors). For instance, last time I tested I could automatically boot OS+service on a new machine as a Go instance in one second on App Engine Standard, and a Java server in 4 seconds. Although I could set up D, I would not be able to get close to those numbers, it would not be automatic and it would cost more. Clearly Go wins (unless Python is suitable, in which case Python wins).

Rust clearly is more suitable than D if you want WASM (C++ might be even better, I don't know).

Python is objectively the better portable scripting language, because D isn't a scripting language. Python has vast libraries and interop you get access to, there is no way D can reach critical mass there.

Of course, there is no reason for D to go after microservices, scripting or WASM either!! If D had an application framework, then it would be better than Go/Rust/Python for writing desktop apps, for instance.

November 05, 2021

On Friday, 5 November 2021 at 13:42:44 UTC, Ola Fosheim Grøstad wrote:

>

On Friday, 5 November 2021 at 13:10:58 UTC, Guillaume Piolat wrote:

>

Interesting point of view because obviously it isn't the point of view of many in the D community. I'll spare you the details but it is very possible D outperform those in their specialty.

I think we need to embrace the idea that there is no single factor, and that D cannot best languages with critical mass in their speciality niches.

I agree that language evaluation occurs in a multi-dimensional space (no single factor) but I believe that D has already "bested" C++, to pick one competitor, in several ways. For example, in performance critical areas it has allowed individuals, or small groups, to quickly develop software that equals or outperforms the world's best. Roughly a (hard performance / development cost) metric.

For me D is significantly better than my previous favorite in the performance space (C++/CUDA). The accessible and powerful metaprogramming capabilities let you get to the metal quickly with code that is quite readable. Unittest, modules, nested functions, ... are also very helpful.

I imagine the Mir developer(s) might feel the same way. I don't know exactly how much Intel has spent on the portion of MKL that competes with Mir, but I would be quite surprised if it were less than 10X that spent on Mir.

Finally, note that "besting" a particular language in some way(s) does not imply "besting" that language in terms of uptake but it does mean that for those who weight those factors heavily, D is the right choice.

November 05, 2021

On Friday, 5 November 2021 at 15:30:51 UTC, Bruce Carneal wrote:

>

Finally, note that "besting" a particular language in some way(s) does not imply "besting" that language in terms of uptake but it does mean that for those who weight those factors heavily, D is the right choice.

Yes, for instance, if you know D and not Python and don't need to do system integration, then the cost of using D for "scripting" is much less than using Python. So I understand that programmers that don't want to be polyglot might prefer to use a swiss-army-knife language like D. For polyglot programmers, I think, specialities tend to win out.

For instance, I have no preference for Dart for writing a GUI applications (as a language). But right now it looks like it could win out by conquering iPhone, Android and in the future the Desktop. Once Dart has established itself on the Desktop, it might be difficult to compete. So, there is a window of opportunity for languages like D, Nim etc in that space right now. Who builds the more attractive portable application framework wins.

And in that space I would agree that C++ is not a strong contender even though it has Qt (although C++ does compete in companionship with other languages).