digitalmars.D.learn - DIP1000 spec?
- Steven Schveighoffer (21/21) Jun 12 2020 I was just looking through the DIPs in the system, and noticed that
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
Jun 12 2020
Logic is apparently still in flux, too early to document.
Jun 14 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-paramsThis 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.
Jun 15 2020