Thread overview
DIP1000 spec?
Jun 14, 2020
Kagamin
Jun 15, 2020
Avrina
June 12, 2020
I was just looking through the DIPs in the system, and noticed that DIP1000 is "superseded".

I thought that was odd, since it's in the compiler as a switch and is a major driver of discussion and hope for memory safety.

In the DIP it says [1]:

"This DIP did not complete the review process. It was left in Draft status for an extended period. During that time, an implementation of the proposal was released. It diverged significantly enough from the proposal that the decsion was made by the Language Maintainers, who are also coauthors of the DIP, to retire the DIP as "Superseded" rather than rewriting it."

So where is the documentation that describes what is actually implemented? The section on Scope and Return parameters [2] in the spec is pretty light compared to the DIP text, and only addresses parameters, not locals.

Without full documentation in the spec, it can be difficult to know whether something should or should not be a bug.

-Steve

[1] https://github.com/dlang/DIPs/blob/e64bd0adfd3f6617038e214c82bc5093f2d33aea/DIPs/other/DIP1000.md#formal-assessment

[2] https://dlang.org/spec/memory-safe-d.html#scope-return-params
June 14, 2020
Logic is apparently still in flux, too early to document.
June 15, 2020
On Friday, 12 June 2020 at 12:49:08 UTC, Steven Schveighoffer wrote:
> I was just looking through the DIPs in the system, and noticed that DIP1000 is "superseded".
>
> I thought that was odd, since it's in the compiler as a switch and is a major driver of discussion and hope for memory safety.
>
> In the DIP it says [1]:
>
> "This DIP did not complete the review process. It was left in Draft status for an extended period. During that time, an implementation of the proposal was released. It diverged significantly enough from the proposal that the decsion was made by the Language Maintainers, who are also coauthors of the DIP, to retire the DIP as "Superseded" rather than rewriting it."
>
> So where is the documentation that describes what is actually implemented? The section on Scope and Return parameters [2] in the spec is pretty light compared to the DIP text, and only addresses parameters, not locals.
>
> Without full documentation in the spec, it can be difficult to know whether something should or should not be a bug.
>
> -Steve
>
> [1] https://github.com/dlang/DIPs/blob/e64bd0adfd3f6617038e214c82bc5093f2d33aea/DIPs/other/DIP1000.md#formal-assessment
>
> [2] https://dlang.org/spec/memory-safe-d.html#scope-return-params

This is the state of most of Walter's DIPs. He's just making it up as he goes, it's the same thing with the @live implementation. Just buckle up, hold your cheeks tight and hope for the best.