Jump to page: 1 2 3
Thread overview
Why are some types from std not in the core of the language?
Jun 10, 2022
mesni
Jun 10, 2022
mesni
Jun 10, 2022
Paul Backus
Jun 10, 2022
zjh
Jun 10, 2022
zjh
Jun 10, 2022
Paul Backus
Jun 10, 2022
zjh
Jun 10, 2022
Paul Backus
Jun 10, 2022
max haughton
Jun 10, 2022
monkyyy
Jun 10, 2022
IGotD-
Jun 12, 2022
ryuukk_
Jun 12, 2022
zjh
Jun 12, 2022
zjh
Jun 12, 2022
zjh
Jun 12, 2022
zjh
Jun 12, 2022
zjh
Jun 12, 2022
Zoadian
Jun 12, 2022
forkit
Jun 12, 2022
forkit
Jun 13, 2022
zjh
June 10, 2022

D has AA and arrays built into the language and runtime. But why are sumtype, arrays/smart pointers using custom allocators, nullable, tuple at the expense of std? Everything listed in this article https://dlang.org/articles/builtin.html applies to them. I think this can be done as something like an optional extension in the compiler.

June 10, 2022

On Friday, 10 June 2022 at 01:08:02 UTC, mesni wrote:

>

D has AA and arrays built into the language and runtime. But why are sumtype, arrays/smart pointers using custom allocators, nullable, tuple at the expense of std? Everything listed in this article https://dlang.org/articles/builtin.html applies to them. I think this can be done as something like an optional extension in the compiler.

By the way, all modern system languages ​​(zig, odin) have such types built in. And D, due to the need to maintain compatibility (although it still breaks it), moves away from the roots and follows the path of C++

June 10, 2022

On Friday, 10 June 2022 at 01:08:02 UTC, mesni wrote:

>

D has AA and arrays built into the language and runtime. But why are sumtype, arrays/smart pointers using custom allocators, nullable, tuple at the expense of std? Everything listed in this article https://dlang.org/articles/builtin.html applies to them. I think this can be done as something like an optional extension in the compiler.

So everyone can feel extremely clever coding their own with recursive templates

Also generally speaking the apis people pick for these things are awful, I rather have more meta programming tools

June 10, 2022

On Friday, 10 June 2022 at 01:08:02 UTC, mesni wrote:

>

D has AA and arrays built into the language and runtime. But why are sumtype, arrays/smart pointers using custom allocators, nullable, tuple at the expense of std? Everything listed in this article https://dlang.org/articles/builtin.html applies to them. I think this can be done as something like an optional extension in the compiler.

I'm not sure if AA and arrays are built in the D language. Not even classes are built into the language. If I'm not mistaken AA, arrays and classes are implemented using meta programming and compiler hooks.

It's a matter of definition, yes classes, AA, arrays are part of the core language but they aren't really implemented as a core of the language.

June 10, 2022

On Friday, 10 June 2022 at 01:16:10 UTC, mesni wrote:

>

On Friday, 10 June 2022 at 01:08:02 UTC, mesni wrote:

>

D has AA and arrays built into the language and runtime. But why are sumtype, arrays/smart pointers using custom allocators, nullable, tuple at the expense of std? Everything listed in this article https://dlang.org/articles/builtin.html applies to them. I think this can be done as something like an optional extension in the compiler.

By the way, all modern system languages ​​(zig, odin) have such types built in. And D, due to the need to maintain compatibility (although it still breaks it), moves away from the roots and follows the path of C++

To quote my own post on the subject:

>

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.

Most contributors would rather build something that's ugly and correct than something that's beautiful and broken, so they mostly choose to write new libraries instead of new language features.

June 10, 2022

On Friday, 10 June 2022 at 13:21:09 UTC, Paul Backus wrote:

>

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.

Is it because there is no class encapsulation?

June 10, 2022

On Friday, 10 June 2022 at 14:00:13 UTC, zjh wrote:

>

Is it because there is no class encapsulation?

What can be done to improve the willingness of contributors to contribute?

June 10, 2022

On Friday, 10 June 2022 at 14:00:13 UTC, zjh wrote:

>

On Friday, 10 June 2022 at 13:21:09 UTC, Paul Backus wrote:

>

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.

Is it because there is no class encapsulation?

No, it's because there's too much shared mutable state, and not enough immutable objects and pure functions.

June 10, 2022

On Friday, 10 June 2022 at 14:14:46 UTC, Paul Backus wrote:

>

No, it's because there's too much shared mutable state, and not enough immutable objects and pure functions.

Can it be improved by splitting large source files into small files?
I think should refactor 'dmd' aggressively.

June 10, 2022

On Friday, 10 June 2022 at 14:24:06 UTC, zjh wrote:

>

On Friday, 10 June 2022 at 14:14:46 UTC, Paul Backus wrote:

>

No, it's because there's too much shared mutable state, and not enough immutable objects and pure functions.

Can it be improved by splitting large source files into small files?
I think should refactor 'dmd' aggressively.

The size of the source files is not the problem.

« First   ‹ Prev
1 2 3