Difference between revisions of "Vision/2015H1"
(Created page with "== Meta == This document discusses high-level vision for D. It is revised every six months (January and July of every year). This (2015H1) is the first instance of the vision...") |
(→Progress in H2 2014) |
||
Line 7: | Line 7: | ||
* We've improved the core language and standard library, with a focus on quality. | * We've improved the core language and standard library, with a focus on quality. | ||
− | * [ | + | * [https://github.com/pulls?q=is%3Apr+user%3AD-Programming-Language+created%3A2014-07-01..2014-12-31 1539 pull requests] created (1472 closed, 67 still open). Compare with [https://github.com/pulls?q=is%3Apr+user%3AD-Programming-Language+created%3A2014-01-01..2014-06-30 1546 in H1] (1516+30 respectively). The halves have been roughly equal in terms of github participation. |
− | * Adoption has continued to increase through H2. Daily 28-days moving average downloads: 524.393 on 2013/12/31, 700.54 on 2014/06/30, and 1226.64 on 2014/12/31. [http:// | + | * Adoption has continued to increase through H2. Daily 28-days moving average downloads: 524.393 on 2013/12/31, 700.54 on 2014/06/30, and 1226.64 on 2014/12/31. [http://erdani.com/d/downloads.daily.png See chart]. |
* DConf 2014 has been a success. | * DConf 2014 has been a success. |
Revision as of 01:04, 1 February 2015
Meta
This document discusses high-level vision for D. It is revised every six months (January and July of every year). This (2015H1) is the first instance of the vision document.
Progress in H2 2014
- We've improved the core language and standard library, with a focus on quality.
- 1539 pull requests created (1472 closed, 67 still open). Compare with 1546 in H1 (1516+30 respectively). The halves have been roughly equal in terms of github participation.
- Adoption has continued to increase through H2. Daily 28-days moving average downloads: 524.393 on 2013/12/31, 700.54 on 2014/06/30, and 1226.64 on 2014/12/31. See chart.
- DConf 2014 has been a success.
H1 2015 Priorities
- Improving our brand
We aim to improve the brand of the D programming language. Part of that is raising the quality of all D-related materials: website, documentation, tutorials, reference, wiki, forums, etc. "This Week in D" is a related new initiative we plan to continue promoting. DConf 2015 is the premier event of the community. Regional meetups are also important for branding: London, Berlin, Silicon Valley.
- Improving participation
Closing related to brand improvement, we plan to foster broader participation to the use and improvement of D.
- Create the D Language Foundation
We aim to create a foundation that promotes understanding and adoption of the D programming language.
- Improve language stability
Define appropriately fuzzily-defined areas of the language (e.g. shared semantics, @property). Foster library additions over language changes, and raise the bar on language changes.
- Emphasize vibe.d
vibe.d is a comprehensive approach to Web development written in D that is approaching maturity. We aim to raise its importance and relevance to D development: offer bundled installation with dmd, release in lockstep, make working with vibe.d an acceptance criterion for dmd release. Essentially we aim at making vibe.d a major story of D and the leading sample application distributed with dmd.
- Memory Management
We aim to improve D's handling of memory. That includes improving the garbage collector itself and also making D eminently usable with limited or no use of tracing garbage collection. We aim to make the standard library usable in its entirety without a garbage collector. Safe code should not require the presence of a garbage collector. Our aim is to top 2000 pull requests by June 30, 2015.
- Safety
We believe safety is an important aspect of language design, and we plan to continue building on the @safe/@trusted/@system troika.
- C++ integration
Seamless integration with C and C++ is an essential competitive advantage of D. We aim to support significant C++ standard library interoperability by mid-2015 and full interoperability on at least one platform by end of 2015.
- Quality
Quality of implementation (both language, standard library, and ecosystem) remains an overall goal.
- Foster additions to the standard library and third-party libraries
We prefer adding new components to the standard library over refactorings and reorganizations of those that work (barring bug fixes). Our vision is to foster a large standard library complemented by a strong battery of third-party libraries. Aspects like Networking, concurrent/parallel/distributed programming, and database connectivity are of interest to placing in the standard library.