On Monday, 2 February 2015 at 01:43:02 UTC, Jerry Morrison wrote:
On Monday, 2 February 2015 at 00:58:53 UTC, Andrei Alexandrescu
On 2/1/15 3:52 PM, Jerry Morrison wrote:
The other big thing missing from the Vision doc is picking a
That may as well come later - or not at all. We don't think it
is now time to commit to a particular niche.
OK. Just keep in mind that if you want to “cross the chasm”
from visionaries to pragmatics, it requires meeting 100% of the
needs of at least one niche (whether that's real-time,
bare-metal, desktop apps, web servers, data analysis, mobile
apps, or whatever).
It does no good to meet 90% of the needs of many niches.
What was the niche C++ aimed for a couple decades back, C with
objects? D is aiming for the same "niche" as C and C++, a
general-purpose, native-compiled language that allows you to
extract almost-maximal performance while still being relatively
easy to use, at least compared to the alternatives.
Perhaps focusing on a smaller niche first would allow D to gain a
larger following quicker, but that might box it in from becoming
more general-purpose later, as early decisions optimize for that
niche and might be tough to undo. Go certainly seems stuck in a
niche now, though I'm not sure how much of that is because they
just don't want to add more general-purpose features like
generics, ie they're happy in their niche.
C and C++ are very general-purpose, but they can still be
considered as a "niche" of performance languages. What's wrong
with D aiming for that "niche?"