On Sunday, 1 February 2015 at 22:40:49 UTC, Dicebot wrote:
- Create the D Language Foundation

btw I personally think this is single most important point in the list that is necessary to actually moved forward with others in focused manner. But it really depends on how it is defined.

Yes, a production language requires staffing the grunt work like release planning & management, soundness analysis, usability, documentation, bug fixing, testing, support, library development, tool development, and administration. (This must be a common issue for volunteer open-source projects.)

But first, people need to get on the same page about whether D is going to “cross the chasm” [1] to a production language with many more users than developers or remain what looks like a base for language experiments and hobby projects. I think a lot of grumpiness in the forums stems from this communication gap.

The other big thing missing from the Vision doc is picking a niche, *for example* a compelling destination for programmers & projects currently stuck in C++.
  * can call a wide range of C++ code [practical transition]
* real-time, can run w/o GC pauses [projects that are OK with GC already moved off of C++] * familiar, multi-paradigm, fast builds, meta-programming, concurrency that doesn't kill you * simpler, predictable, few pitfalls, few special cases, few design quirks, orthogonal features * memory-safe, overflow-safe, reliable, secure, low maintenance costs

If you're up for that, it may require an incompatible transition (D3?) e.g. to make const non-transitive for C++ compatibility, to rethink memory management, and to change or remove incomplete features.

BTW a compiled language shines for fast startup (desktop apps) and predictable performance (real-time s/w). In contrast, JIT compilers and garbage collectors will continue improving program throughput (servers).

[1] http://smile.amazon.com/Crossing-Chasm-3rd-Geoffrey-Moore-ebook/dp/B00DB3D81G/ref=sr_1_1?s=books&ie=UTF8&qid=1422832418&sr=1-1&keywords=crossing+the+chasm

Reply via email to