GDP X — Template and Instructions
- Author
<list of authors’ real names and optionally, email addresses>
- Status
<Draft | Active | Accepted | Declined | Provisional | Final | Replaced>
- Type
<Feature | Informational | Process>
- Created
<date created on, in dd-mm-yyyy format>
- Discussion PR
<PR url>
Abstract
The abstract should be a short description of what the GDP will achieve.
Note that the — in the title is an elongated dash, not -.
Motivation and Scope
This section describes the need for the proposed change. It should describe the existing problem, who it affects, what it is trying to solve, and why. This section should explicitly address the scope of and key requirements for the proposed change.
Usage and Impact
This section describes how users of GT4Py will use features described in this GDP. It should be comprised mainly of code examples that wouldn’t be possible without acceptance and implementation of this GDP, as well as the impact the proposed changes would have on the ecosystem. This section should be written from the perspective of the users of GT4Py, and the benefits it will provide them; and as such, it should include implementation details only if necessary to explain the functionality.
Backward compatibility
This section describes the ways in which the GDP breaks backward compatibility.
Detailed description
This section should provide a detailed description of the proposed change. It should include examples of how the new functionality would be used, intended use-cases and pseudo-code illustrating its use.
Implementation
This section lists the major steps required to implement the GDP. Where possible, it should be noted where one step is dependent on another, and which steps may be optionally omitted. Where it makes sense, each step should include a link to related pull requests as the implementation progresses.
Any pull requests or development branches containing work on this GDP should be linked to from here. (A GDP does not need to be implemented in a single pull request if it makes sense to implement it in discrete phases).
Alternatives
If there were any alternative solutions to solving the same problem, they should be discussed here, along with a justification for the chosen approach.
Discussion
This section may just be a bullet list including links to any discussions regarding the GDP:
This includes links to relevant GitHub issues and publicly available discussions.
References and Footnotes
- 1
Each GDP must either be explicitly labeled as placed in the public domain (see this GDP as an example) or licensed under the Open Publication License.
Copyright
This document has been placed in the public domain. 1