Language design discussions
D is an evolving and complex language. New features are proposed, unexpected interaction in old ones get found, design issues are raised. All this may involve hard debates in D newsgroup and if often forgotten. This page serves as an index for major design discussions and proposals.
Formal improvement proposals can be found on the main DIP index.
Contents
[hide]Properties
Description
Initial @property design has issues. How can it be changed or even discarded at all?
Thread
- Initial discussion where this topic has rised
- Walters follow-up with proposal to kill property, most info here
Essential moments
Proposals
Access specifiers and symbol visibility
Description
Currently there is feature like "static global" in C or "unnamed namespace" in C++. Access specifiers for module-level symbols control access, not visibility. Ability to hide symbols needs to be added without breaking current access system.
As a result of discussion, Walter has asked for DIP on this topic.
Essential moments
Thread
- Initial thread that has raised this topic
- Follow-up about current state of affairs
- Access specifiers and visibility - combined data to make a decision upon
Proposal
auto ref
Description
Essential moments
Thread
volatile
Threads
- October 2013 Discussion
- September 2013 Discussion
- July 2012 Discussion
- July 2004 Discussion
- June 2004 Discussion
- May 2004 Discussion
- March 2002 Discussion
Essential Moments
Proposals
final
-by-default
Threads
Essential Moments
- Manu provides justification for
final
-by-default - Walter concedes
- Walter posts decision citing JSON regression and almost losing a client.
- Client affected by JSON regression steps forward encouraging gradual, managed change
- Andrei puts his foot down stating there will be no
final
-by-default in the D programming language.
rvalue references
Threads
Automatic Reference Counting (ARC) as an alternative to D's Garbage Collector
Threads
Essential Moments
- {Feel free add some}