Is D right for me?

Daniel Gibson metalcaedes at gmail.com
Wed Oct 13 10:13:47 PDT 2010


retard schrieb:
> Tue, 12 Oct 2010 10:35:03 -0700, Jonathan M Davis wrote:
> 
>> On Tuesday, October 12, 2010 04:08:13 Simen kjaeraas wrote:
>>> Jonathan M Davis <jmdavisProg at gmx.com> wrote:
>>>> Except that copying Tango is taboo. We want to avoid any possible
>>>> accusation of
>>>> copying Tango's code or design. There have been issues in the past
>>>> where Tango
>>>> devs thought that we might be doing that, and we just don't want to
>>>> risk any
>>>> sort of problems with the Tango folks. So, whatever we put in Phobos,
>>>> we do it
>>>> without looking at Tango.
>>> You know, we might consider asking them for permission. That way, there
>>> should be no problems.
>> That can be done, to be sure, but we definitely can't just look at their
>> code - or even API - and create something similar, and from what I
>> recall, most cases of trying to get permission have a been a problem
>> (primarily due to there being multiple authors, I think). If there's
>> only one author for the stream code in Tango, that would be easier.
>>
>> Regardless, the point is that we can't just go and look at the Tango API
>> and use it to give ourselves ideas on what to do with Phobos.
> 
> I doubt the copyright law can protect API definitions. In that case 
> projects like Wine (winehq.org) couldn't exist. What do you think?

The problem is that for the windows API you don't see the implementation, so you can't have stolen 
the code.
Tango's code however is available to anyone so it's a lot harder to prove that you only looked at 
their API documention and not at their code.
And it's quite probable that your implementation looks similar to theirs - for standard stuff most 
programmers (that may have seen any code doing something similar) will produce similar code - how do 
you prove that you just did it the way that occurred natural to you and didn't copy their code?

So to be safe you have two possibilities:
1. don't model you API after Tango's
2. clone their API, look at their code and make sure yours is ridiculously different

Else it may turn out like the SHOO time code disaster...


More information about the Digitalmars-d mailing list