Don wrote:
Tom S wrote:
Lutger wrote:
Tom S wrote:
Yigal Chripun wrote:
(snip)
IMHO, the Tango vs. Phobos licensing issue is the biggest bikeshed
color
problem in the D realm and the only people that can solve it are the
tango devs and walter and co. of which Neither are willing to budge.
Uhhh... try listening to Tango folks sometimes. They really have tried.
If you can forgive my ignorance, what is the current Tango/Phobos
problem you see and refer to here? Is it related to D1 or also
concerns a possible future Tango D2?
I'm mostly a Tango user, not its developer, so I might be misinformed,
but there doesn't seem to be any licensing issue except a conceptional
one.
Not true. The issue is that Tango uses the BSD license, which is
inappropriate for a standard library. Phobos2 now uses the Boost license
throughout. Because of the licensing issue, Andrei and Walter won't look
at any Tango code.
This could be fixed quite simply by adding the Boost license to the list
of Tango licenses (it should replace BSD in my opinion).
BSD is just one of two options for Tango. What's wrong with AFL v3.0?
http://dsource.org/projects/tango/wiki/License
The next biggest issue is module naming.
Ouch :D I'll back away from that one quickly.
As for other issues - there's very little communication between the 'D
Team' and the 'Tango Team'. Much could be learned and borrowed from
it, but you don't see that in Phobos 2. Looks like we're going to end
up with two 'utility libraries' that are not compatible with one
another and instead of complementing each other, they offer ways to do
the same things in a slightly different manner.
Most of the competing functionality is with parts of Phobos which are
going to be ditched, eg the I/O system.
In Phobos2, everything will be range-based -- and that introduces a
conceptual difference. (much like the STL in C++ vs the C libraries).
How much is 'most' here? Modules like base64, bigint, boxer/variant,
conv, date utils, filesystem ops, regex, traits, utf/unicode contain a
lot of duplicate work.
The big issue will be, how far can Tango2 go in integrating Phobos2
concepts while retaining as much of Tango1 as possible?
IIRC, Tango devs claim that its runtime is better than druntime, which
also only supports DMD at the moment. And apparently, there's been
very little contact with Sean lately, so it's a case of 'us' vs 'them'
again.
The Phobos2 runtime _is_ the Tango runtime. That problem has been fixed.
Unless a merger has been done quite recently, it _was_.
--
Tomasz Stachowiak
http://h3.team0xf.com/
h3/h3r3tic on #D freenode