Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Clones and moral behavior

Author: Bo Persson

Date: 08:48:15 08/25/05

Go up one level in this thread


On August 24, 2005 at 16:21:39, José Carlos wrote:

>On August 24, 2005 at 12:47:37, Bo Persson wrote:
>
>>On August 23, 2005 at 16:50:48, José Carlos wrote:
>>
>>>  I agree with you and Uri about there's no clear definition of what a clone is.
>>
>>Of course there is, if you have copied the code it's a clone. If you have
>>written it yourself, it is original.
>>
>>
>>>"Having source code of other engines" is miles away from clear. Example: I have
>>>in my code:
>>>
>>>int i = 0;
>>>
>>>  Either it is in some prior program (I'm a cloner) or in some later program (he
>>>cloned me -early versions of Averno were open source-).
>>
>>Yes, but did you think of this line yourself, or did you paste it from another
>>program?
>
>
>  For sure I didn't invent that line myself. I've seen it many times in other
>programs.

It doesn't matter if you have seen it before. For this particular line, did you
write

int i = 0;

because *you* figured out that you needed an integer or just because some other
program does that. Why did you name it i and not j or k? Would you have used j
if Crafty or Fruit did?

If you figured out that you needed this code, it's ok.

>
>
>>>  Of course copying that line is not cloning.
>>
>>Of course it is!!
>
>
>  Come on! You can't expect people inventing C language everytime. Of course
>I've copied that line. I learnt it in the university, I didn't figure it out
>myself. And of course I'm not a cloner for that.

Using things you have learned is exactly what you should do!

Cutting and pasting is not.

>
>  If I take an open source program, make some small changes and release it, I
>know I'm a cloner. But if I study crafty and then I implement rotated
>bitboards... am I a cloner? I honestly say I don't know.

It depends on how you do it. Is it cut-and-paste or a separate design?

If your code is 100% like Crafty, it is easy to tell. If it is just similar it
is harder to say. But the author still knows how the code was created.


I have rotated bitboards in my program, implemented after reading Bob's
descriptions and peeking at Crafty's code (and other programs). Then I wrote my
code, independently.

It took me several years before I noticed that Bob's bitboards are rotated 0,
90, and +/- 45 degrees. My bitboards happen to be rotated 0, 45, 90, and 135
degrees. Definitely not a cut-and-paste, but using the same ideas - which is ok.


>>
>>"Copying or retyping other code is cloning. Writing it yourself is not." :-)
>
>
>  Read above. People learn programming from others. People use instructions they
>have learnt before. Then, everybody are cloners?


No, you can use the ideas, but not the code.

When I write this text I use words that have been written before. That's not
cloning. If copy it from someone else, it is.



Bo Persson



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.