November 09, 2021

On Tuesday, 9 November 2021 at 07:22:01 UTC, arco wrote:

>

In fact I find that the geneses of D and Rust are remarkably similar: both were born in a company, out of frustration with C++ and the belief that their creators could design something better.

D was not born in a company. D was created because Walter didn't feel like being retired and set out to create something he would like to use and share with the world. If you want D to take a different direction, you have to change Walter's idea of what makes up a good language.

AFAIK, Rust was handed over by the creator to the organization he was part of.

Completely different settings.

November 09, 2021

On Monday, 8 November 2021 at 22:53:09 UTC, 12345swordy wrote:

>

That is because I literally have no idea what exactly does your solution consist here! Right now, I am not convinced at all regarding your solution.

Alright, but my sketch of a solution would require rethinking the D type system and that would have to follow a restructuring of compiler internals, so it would totally depend on the compiler authors' willingness to build a clean architecture first. Meaning it is something you could plan for, but not do over night.

Anyway, the solution would be to make the language more uniform under-the-hood. So you would not necessarily notice it much as an application programmer, it would mostly be visible in meta-programming.

So what you do is you internally in the compiler collapse struct and class into one concept, with the ability to constrain it. That way a class and a referenced structs become similar in meta-programming.

For an application programmer it could be more or less the same as now, if desired. Syntax could be expanded internally into the new representation.

November 09, 2021

On Tuesday, 9 November 2021 at 07:53:19 UTC, Mike Parker wrote:

>

Not even close to similar. Digital Mars a one-man company and D a one-man project. Rust had and continues to have the resources of Mozilla behind it.

Rust also started as a one man show (Graydon Hoare). Mozilla initially supported it as a research project, not as a large investment, and its resources are limited anyway compared to the likes of Google. The comparison holds in my opinion, it's what came after that made the difference.

November 09, 2021

On Saturday, 6 November 2021 at 11:09:24 UTC, Alexey wrote:

>

there are too few projects, which can display Dlang's awesomeness, while for Golang it's Docker and Kubernetes and for Rust it is Mozilla programs.

IMHO, If Dlang would have something like Web-engine written on it.. or may be if Dlang had own Linux-kernel replacement, or maybe some DBMS (for instance RethinkDB fork or Cassandra fork), or OpenShift substitution - this would be huge!

How about this?: create Dlang job board, so companies and entrepreneurs could find and hire D programmers? If this will workout, Dlang's fame will become self-sustainable.

November 09, 2021

On Tuesday, 9 November 2021 at 08:32:07 UTC, arco wrote:

>

Rust also started as a one man show (Graydon Hoare). Mozilla initially supported it as a research project, not as a large investment, and its resources are limited anyway compared to the likes of Google. The comparison holds in my opinion, it's what came after that made the difference.

This is an interesting interpretation of history. By the end of 2014, the Rust core team had eight members, at least seven of whom were hired by Mozilla to work on getting the language in order for the 1.0 release: https://web.archive.org/web/20141225072631/https://github.com/rust-lang/rust/wiki/Note-core-team

But that understates the funding. They had the Servo team, many of whom used paid hours to work on Rust*, and paid interns.

* Even when these were not direct contributions to the language, being paid to work on Servo meant they were paid to test the language, find bugs, and identify areas needing improvement.

November 09, 2021

On Tuesday, 9 November 2021 at 09:54:06 UTC, bachmeier wrote:

>

On Tuesday, 9 November 2021 at 08:32:07 UTC, arco wrote:

>

Rust also started as a one man show (Graydon Hoare). Mozilla initially supported it as a research project, not as a large investment, and its resources are limited anyway compared to the likes of Google. The comparison holds in my opinion, it's what came after that made the difference.

This is an interesting interpretation of history. By the end of 2014, the Rust core team had eight members, at least seven of whom were hired by Mozilla to work on getting the language in order for the 1.0 release: https://web.archive.org/web/20141225072631/https://github.com/rust-lang/rust/wiki/Note-core-team

But that understates the funding. They had the Servo team, many of whom used paid hours to work on Rust*, and paid interns.

Yes. That was in 2014. But Hoare started Rust in 2006 as a personal project.

Which is my point: in 2006 it was an obscure experiment created by one person. In 2014 Mozilla was employing people both to work on it and to use it. In 2019 Microsoft & co moved in. In 2021 Linux developers are considering using it in the kernel.

In other words, instead of dismissing comparisons between Dlang and Rust as somehow unfair because Rust has a lot more resources, a more interesting question is IMO why and how did Rust attract those resources and which lessons can be learnt from it.

November 09, 2021

On Tuesday, 9 November 2021 at 10:32:57 UTC, arco wrote:

>

In other words, instead of dismissing comparisons between Dlang and Rust as somehow unfair because Rust has a lot more resources, a more interesting question is IMO why and how did Rust attract those resources and which lessons can be learnt from it.

Walter is unlikely to hand over D to a commercial entity, which I think most D users are happy with. That would be a completely different project.

Rust follows the same path as Swift and JavaScript. Person affiliated with an organization creates a language. The person hands over decision making to the organization, which in turn evolves it further into a "commercial" commodity.

November 09, 2021

On Tuesday, 9 November 2021 at 10:48:01 UTC, Ola Fosheim Grøstad wrote:

>

Walter is unlikely to hand over D to a commercial entity, which I think most D users are happy with. That would be a completely different project.

Why I like D is that the author of D doesn't bloat.

November 09, 2021

On Tuesday, 9 November 2021 at 10:48:01 UTC, Ola Fosheim Grøstad wrote:

>

On Tuesday, 9 November 2021 at 10:32:57 UTC, arco wrote:

>

In other words, instead of dismissing comparisons between Dlang and Rust as somehow unfair because Rust has a lot more resources, a more interesting question is IMO why and how did Rust attract those resources and which lessons can be learnt from it.

Walter is unlikely to hand over D to a commercial entity, which I think most D users are happy with. That would be a completely different project.

Rust follows the same path as Swift and JavaScript. Person affiliated with an organization creates a language. The person hands over decision making to the organization, which in turn evolves it further into a "commercial" commodity.

Rust is not a commercial entity. It's governed by the Rust Foundation which is non-profit (and also very recent), but it remains a community project open to anyone who wants to get involved. Again, it's not very different from D in that regard.

November 09, 2021

On Monday, 8 November 2021 at 19:27:49 UTC, Ola Fosheim Grøstad wrote:

>

On Monday, 8 November 2021 at 18:59:56 UTC, Dukc wrote:

>

On Monday, 8 November 2021 at 13:59:30 UTC, Ola Fosheim Grøstad wrote:

>

What is needed is more of a layered approach.

That's what -betterC is for I believe.

That is more of a feature removal. You ought to have all interfacing types at the bottom layer.

What do "interfacing types" mean?

You somehow use a lot of different words than the rest of us, making you difficult to follow. And not a lot of concrete D examples. And I mean in general, not just this thread.

I've read dozens of your posts and I still don't have a good picture of what you're lobbying for. What I THINK I've gathered so far:

  • Dmd should be rewritten in idiomatic D style, so that it's easier to experiment with.
  • After that, a grand rework of the whole language.
  • A small simple core for the reworked language, much like Lisp or Forth.
  • A different fork for the language rework, instead of having all that in the same codebase behind version declarations or -preview switches or such.
  • No serious priority to stability and backwards compatibility before the language rework is complete.

If I got those even nearly right, You're in essence proposing D3.