Tom S wrote:
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
AFL v3.0 Section 9.
If You distribute or communicate copies of the Original Work or a
Derivative Work, You must make a reasonable effort under the
circumstances to obtain the express assent of recipients to the terms of
this License.
---
Richard Stallman's comment on this was:
Recent versions of the Open Software License have a term which requires
distributors to try to obtain explicit assent to the license. This means
that distributing OSL software on ordinary FTP sites, sending patches to
ordinary mailing lists, or storing the software in an ordinary version
control system, is arguably a violation of the license and would subject
you to possible termination of the license. Thus, the Open Software
License makes it very difficult to develop software using the ordinary
tools of free software development. For this reason, and because it is
incompatible with the GPL, we recommend that no version of the OSL be
used for any software.
----
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.
Yes, AFAIK half of those will be ditched from Phobos. Some were
copy-and-paste from each other in the first place.
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_.