Difference between revisions of "Beyond D2"
Timotheecour (talk | contribs) |
Timotheecour (talk | contribs) (→Feature Wish List for hypothetical D3) |
||
Line 15: | Line 15: | ||
* can we get rid of @property? | * can we get rid of @property? | ||
− | == | + | == Features to add == |
* AST macros | * AST macros | ||
** would enable many features; eg: | ** would enable many features; eg: |
Revision as of 01:13, 10 November 2013
Contents
Motivation
This page can be used as a centralized place to discuss parts of D2's design that are controversial, undesirable or that could be improved, including those that are too late to fix in D2. Also discussed here are features that would be worthy of consideration in a hypothetical successor for D2. This page came up from email thread [1];
D questionable design choices
- is virtual by default a good idea with separate compilation model?
Features to improve
- improved dmd/rdmd command line: [DIP41: dmd/rdmd command line overhaul]
Features to drop
- can we get rid of C-style expression lists in parenthesis; these would be used for tuples
- can we get rid of @property?
Features to add
- AST macros
- would enable many features; eg:
- supersedes: "proposal: a new string litteral to embed variables in a string"
- supersedes: "feature request: __ARGS__ for logging (cf __FILE__, __LINE__, __FUNC___)"
- would enable many features; eg:
- python style named parameter arguments
[1] Related email thread: 'Maintain notes for D's successor? [Was: Re: Why the @ in @safe? & UDAs]'