October 01
On Saturday, September 30, 2023 6:21:48 PM MDT ryuukk_ via Digitalmars-d wrote:
> On Thursday, 28 September 2023 at 12:42:04 UTC, deadalnix wrote:
> > D having more feature than most language, adding feature is clearly not where the impact is.
>
> I agree, however let us not get side tracked
>
> Asking for pattern matching? it's not new feature, it's improving ``switch``
>
> Asking for tagged union? it's not new feature, it's improving ``enum``
>
> However, you are wrong at expecting an impact for D by improving OOP, nope, D needs to improve the non-OOP story, more OOP is repulsive, specially for system languages

If they're not what the language currently does, it's still a new feature. They may be features that you want, and they may even be much easier to add than many other features, but they're still not currently part of the language.

The main point here is that there are a number of features that we already have which are not implemented as well as they could be, which sometimes results in bugs, and sometimes results in performance issues. Ideally, we would be making sure that what we already have works as advertised and performs well, and in general, issues with language features that we already have are far more likely to cause problems than the fact that we're missing a particular feature that someone might want.

New features can definitely improve the language, but we also need to make sure that what we already have is solid. And arguably, the focus is often too much on adding a feature that some particular subset of the community thinks is a "must-have" and not enough on improving what the language already does. And in large part, it's backlash over issues caused by not focusing enough on stability and improving what we already have which has led to the D foundation deciding to temporarily freeze the DIP process and focus more on bug fixing first.

We're still going to be getting new features, but when we can identify issues like the one that Deadalnix has brought up here, we really should be trying to fix them. And while OOP is not as large a focus in D as it is in many other programming languages, it's still a paradigm that D supports and many programs use. So, if we can speed it up, that's definitely a win for the language. And since the runtime uses classes, it could actually speed up D programs that generally avoid OOP. And since the compiler uses classes, it might even speed up compilation times, which is a win for everyone.

- Jonathan M Davis



November 13

On Thursday, 28 September 2023 at 12:42:04 UTC, deadalnix wrote:

>

Hi all,

[...]

Here we go: https://github.com/snazzy-d/sdc/blob/master/test/llvm/downcast.d

Except the interface part.

January 11
https://issues.dlang.org/show_bug.cgi?id=24332
https://issues.dlang.org/show_bug.cgi?id=24333
https://issues.dlang.org/show_bug.cgi?id=24335
https://issues.dlang.org/show_bug.cgi?id=24336
January 11
On 9/28/2023 7:31 AM, deadalnix wrote:
> It does exist.

You're right. The ClassInfo can be merged with the vtbl[]. The trouble is it's a variable size, so that would have to be redone, too.
January 14
On 9/28/2023 5:42 AM, deadalnix wrote:
> 1/ Downcast to final classes.

This has a PR for it now.

https://github.com/dlang/dmd/pull/16032
January 19
On Sunday, 14 January 2024 at 09:04:32 UTC, Walter Bright wrote:
> On 9/28/2023 5:42 AM, deadalnix wrote:
>> 1/ Downcast to final classes.
>
> This has a PR for it now.
>
> https://github.com/dlang/dmd/pull/16032

Thanks, that's a step in the right direction.
January 19
On 1/18/2024 8:20 PM, deadalnix wrote:
> Thanks, that's a step in the right direction.

You're welcome. I'd still like a list of the other problems you alluded to.
January 22
On Sunday, 14 January 2024 at 09:04:32 UTC, Walter Bright wrote:
> On 9/28/2023 5:42 AM, deadalnix wrote:
>> 1/ Downcast to final classes.
>
> This has a PR for it now.
>
> https://github.com/dlang/dmd/pull/16032

Why md5 and not a faster method?

Andrea
January 22

On Monday, 22 January 2024 at 10:08:16 UTC, Andrea Fontana wrote:

>

On Sunday, 14 January 2024 at 09:04:32 UTC, Walter Bright wrote:

>

On 9/28/2023 5:42 AM, deadalnix wrote:

>

1/ Downcast to final classes.

This has a PR for it now.

https://github.com/dlang/dmd/pull/16032

Why md5 and not a faster method?

Andrea

That is good opportunity to submit a PR, try it, it's not that hard and is rewarding

January 22

On Monday, 22 January 2024 at 10:08:16 UTC, Andrea Fontana wrote:

>

Why md5 and not a faster method?

What algorithm would you suggest?