June 30, 2009
Sean Kelly wrote:
> == Quote from Tom S (h3r3tic@remove.mat.uni.torun.pl)'s article
>> IIRC, Tango devs claim that its runtime is better than druntime, which
>> also only supports DMD at the moment.
> 
> How is it better?  I vaguely recall at least one change in Tango's runtime
> that actually violates the Posix spec, and so decided to implement things
> differently in Druntime.  But I don't watch the Tango timeline, so it's
> possible that some awesome new features have been implemented that
> I'm not aware of.

Sorry, I don't have a clear answer here. On IRC Fawzi mentioned exactly that "tango is still better than druntime".

/me summons Fawzi


> As for Druntime only supporting DMD... see below.
> 
>> And apparently, there's been very
>> little contact with Sean lately, so it's a case of 'us' vs 'them' again.
> 
> No one has tried to contact me.  I talked with Fawzi a bit shortly after
> Druntime was created, but that's it.  I'm too busy to even do the things
> I have planned for Druntime anyway, so I'm not about to chase people
> down to try add yet more tasks to my list.

Here I've based my words on a chat with Lars, but it might be that you being so busy was misinterpreted as not willing to communicate and "acting a bit weird". It might be hard to get it out of him now, as he seems to have given up on NG discussions :(


Now it looks like I'm warmongering... Merely trying to get some parts of the community to talk with each other, because there are lots of misunderstandings and perhaps communications barriers in the air.


-- 
Tomasz Stachowiak
http://h3.team0xf.com/
h3/h3r3tic on #D freenode
June 30, 2009
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).

The next biggest issue is module naming.

> 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).

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.

June 30, 2009
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
June 30, 2009
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_.
> 
> 
June 30, 2009
Don wrote:
> 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:
> [ snip ]
> ----

Thanks for explaining this! I was not aware of this clause. The wiki/License page for Tango puts AFL 3.0 in a much better light... I'll see what folks have to say on IRC :)


>>> 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.

Cool! But if they are ditched, does it mean that they will have alternative implementations written in the nearest future or does it mean that Tango will actually complement Phobos?


-- 
Tomasz Stachowiak
http://h3.team0xf.com/
h3/h3r3tic on #D freenode
July 01, 2009
== Quote from Tom S (h3r3tic@remove.mat.uni.torun.pl)'s article
> Sean Kelly wrote:
> > == Quote from Tom S (h3r3tic@remove.mat.uni.torun.pl)'s article
> >
> >> And apparently, there's been very
> >> little contact with Sean lately, so it's a case of 'us' vs 'them' again.
> >
> > No one has tried to contact me.  I talked with Fawzi a bit shortly after Druntime was created, but that's it.  I'm too busy to even do the things I have planned for Druntime anyway, so I'm not about to chase people down to try add yet more tasks to my list.
> Here I've based my words on a chat with Lars, but it might be that you being so busy was misinterpreted as not willing to communicate and "acting a bit weird". It might be hard to get it out of him now, as he seems to have given up on NG discussions :(

For a while, there was an attempt among the Tango folks to make me an
ambassador of sorts to Walter and Andrei.  I never really understood the
need for this, and I suggested that whoever wanted to contact whoever
else simply do so.  Near as I can tell, this made me appear divisive to
some.  More to the point, when I was working on Tango I acted upon
my own best judgment and was trusted to do so by those involved.  This
changed as soon as talk of collaboration began, and the Tango folks
suggested repeatedly that there must be some sort of group consensus
before I made any functional runtime change.  There's more, but it's all
in the same vein.

To be quite frank, I would walk away from D entirely before I'd let myself
be put in such a position, and were it not for the fact that I was the only
person with the ability to resolve some of the issues involved in the
collaboration discussions, I'd have walked away right then because of the
pressure the Tango team was putting on me.  If this has earned me a bad
reputation in some circles, so be it.  I continue to consider Tango support
when making changes to Druntime, and if the Tango team doesn't intend
to use Druntime that's really their problem at this point.

I normally wouldn't air such dirty laundry in public, but this thread shows that there's still a lot of confusion about where things stand concerning Druntime and Tango, and so I think it may help to at least outline my perspective on the issue.  My sincerest hope is that people will let this go, and focus their energies on something more productive.
July 01, 2009
Sean Kelly Wrote:

> == Quote from Tom S (h3r3tic@remove.mat.uni.torun.pl)'s article
> > Sean Kelly wrote:
> > > == Quote from Tom S (h3r3tic@remove.mat.uni.torun.pl)'s article
> > >
> > >> And apparently, there's been very
> > >> little contact with Sean lately, so it's a case of 'us' vs 'them' again.
> > >
> > > No one has tried to contact me.  I talked with Fawzi a bit shortly after Druntime was created, but that's it.  I'm too busy to even do the things I have planned for Druntime anyway, so I'm not about to chase people down to try add yet more tasks to my list.
> > Here I've based my words on a chat with Lars, but it might be that you being so busy was misinterpreted as not willing to communicate and "acting a bit weird". It might be hard to get it out of him now, as he seems to have given up on NG discussions :(
> 
> For a while, there was an attempt among the Tango folks to make me an
> ambassador of sorts to Walter and Andrei.  I never really understood the
> need for this, and I suggested that whoever wanted to contact whoever
> else simply do so.  Near as I can tell, this made me appear divisive to
> some.  More to the point, when I was working on Tango I acted upon
> my own best judgment and was trusted to do so by those involved.  This
> changed as soon as talk of collaboration began, and the Tango folks
> suggested repeatedly that there must be some sort of group consensus
> before I made any functional runtime change.  There's more, but it's all
> in the same vein.
> 
> To be quite frank, I would walk away from D entirely before I'd let myself
> be put in such a position, and were it not for the fact that I was the only
> person with the ability to resolve some of the issues involved in the
> collaboration discussions, I'd have walked away right then because of the
> pressure the Tango team was putting on me.  If this has earned me a bad
> reputation in some circles, so be it.  I continue to consider Tango support
> when making changes to Druntime, and if the Tango team doesn't intend
> to use Druntime that's really their problem at this point.
> 
> I normally wouldn't air such dirty laundry in public, but this thread shows that there's still a lot of confusion about where things stand concerning Druntime and Tango, and so I think it may help to at least outline my perspective on the issue.  My sincerest hope is that people will let this go, and focus their energies on something more productive.

d00d i ain't gettin' it. did u have a fallin' with tango folks? with phobos folks? both? im stoopid. r u still workin' on druntime? if not to whom did u give it. pls clarify.
July 01, 2009
Sean,

With this one honest post, you may have just revitalized D's future by a year or two (perhaps long enough for it to be forcefully pulled into popularity beyond the clutches of central control).

Expect Phobos2 to gain more popularity as Tango (*sniff*) drifts into the
background of d1 history.

Signed,

Your-local-fortune-cookie. ;)

July 01, 2009
== Quote from superdan (super@dan.org)'s article
>
> d00d i ain't gettin' it. did u have a fallin' with tango folks? with phobos
folks? both? im stoopid. r u still workin' on druntime? if not to whom did u give it. pls clarify.

I'm still maintaining druntime and working with the Phobos folks. Tickets in bugzilla for druntime go to me, etc.  Nothing has changed.
July 01, 2009
Tom S wrote:
> Don wrote:
>> 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:
>> [ snip ]
>> ----
> 
> Thanks for explaining this! I was not aware of this clause. The wiki/License page for Tango puts AFL 3.0 in a much better light... I'll see what folks have to say on IRC :)

Those long licenses really scare me, I'm never sure what they actually mean.

>>>> 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.
> 
> Cool! But if they are ditched, does it mean that they will have alternative implementations written in the nearest future or does it mean that Tango will actually complement Phobos?

Clearly they'll have range-based implementations where appropriate. The extent to which Phobos and Tango overlap will probably depend on the extent to which Tango2 embraces the range paradigm.