All of these environments have a stable language, and on top of that, ONE
single main library. With C++ this is STL/IOStream, with .NET and Java it's
their respective libraries. Similar for Python and Ruby. With D however, there
are at least 2 main libraries (Phobos and Tango), whereof Tango doesn't support
D2. It is unacceptable for the target audience to find this situation. Tools
can't interoperate, libraries can't interoperate, etc.

You can think of Phobos as one single main library for D, Tango is 3rd-party.
3rd-party libraries exist for .net and java, because their standard libs are no
silver bullet of course, and there are so many general-purpose libs for C++,
that you have not enough fingers to count them, STL is still alive only due to
support from die-hard c-plus-plusers. As to the languages, C# evolves, C++
evolves, Java doesn't for the very reason it will wreak the same troubles for
backward compatibility D2 has now.

All of these environments have a stable language, and on top of that, ONE
single main library. With C++ this is STL/IOStream, with .NET and Java it's
their respective libraries. Similar for Python and Ruby. With D however, there
are at least 2 main libraries (Phobos and Tango), whereof Tango doesn't support
D2. It is unacceptable for the target audience to find this situation. Tools
can't interoperate, libraries can't interoperate, etc.

You can think of Phobos as one single main library for D, Tango is 3rd-party.
3rd-party libraries exist for .net and java, because their standard libs are no
silver bullet of course, and there are so many general-purpose libs for C++,
that you have not enough fingers to count them, STL is still alive only due to
support from die-hard c-plus-plusers. As to the languages, C# evolves, C++
evolves, Java doesn't for the very reason it will wreak the same troubles for
backward compatibility D2 has now.

Yes, however, the runtime of C++ isn't dictated by STL, ATL, WTL, boost, and
whatever else. So it is still possible to link the stuff together. Although
naming conventions become a first class horror.
However, Tango and Phobos (D1) are simply incompatible. It's rather impossible
to link both of them together.
What I want to say is that with the emergence of D2, and hopefully with the
emergence of a singular runtime (druntime), this problem will be over with.
If library A is based on Tango and library B on Phobos, currently, it will not
be possible to let them work together.
I would still like that we all focus on D2 development.

However, Tango and Phobos (D1) are simply incompatible. It's rather
impossible to link both of them together.
If library A is based on Tango and library B on Phobos, currently, it will
not be possible to let them work together.

Yea, but isn't this less of a problem in practice (even in the interim
before a stable D2) than it's often made out to be? Of coruse, I can see
how, on paper, it could be a horrible situation. But IMO the current reality
is that, and no offence to Walter, but Phobos1 just kind of sucks. And
because of that, the vast majority of D1 libs I've seen (at least the
still-active ones) are either Tango or dual-version (using conditional
compilation).

However, Tango and Phobos (D1) are simply incompatible. It's rather
impossible to link both of them together.
If library A is based on Tango and library B on Phobos, currently, it will
not be possible to let them work together.

Yea, but isn't this less of a problem in practice (even in the interim
before a stable D2) than it's often made out to be? Of coruse, I can see
how, on paper, it could be a horrible situation. But IMO the current reality
is that, and no offence to Walter, but Phobos1 just kind of sucks. And
because of that, the vast majority of D1 libs I've seen (at least the
still-active ones) are either Tango or dual-version (using conditional
compilation).

I agree that Phobos1 is not what we're looking for. But it makes things
confusing to new developers. With serious problems in the long end.
I'm just giving a warning that we shouldn't have a similar situation with D2. I
think druntime is a good start at getting this solved. As Phobos2 is a lot
better anyway, it wouldn't have the problems that currently exist.
Basically I've got two hopes:
- No confusing library situation for D2
- D2 is final for a longer time, in such a way that software tooling gets a
chance
I still believe it would help development and bringing D2 to the public.