Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Was the List 5.12 issue ever cleared?

Author: Dann Corbit

Date: 11:25:16 03/05/04

Go up one level in this thread


On March 05, 2004 at 04:25:49, Uri Blass wrote:

>On March 04, 2004 at 22:21:18, Dann Corbit wrote:
>
>>On March 03, 2004 at 21:01:36, Bas Hamstra wrote:
>>
>>>On March 03, 2004 at 14:33:50, Dann Corbit wrote:
>>>
>>>>On March 03, 2004 at 13:43:49, Bas Hamstra wrote:
>>>>[snip]
>>>>>I fact the sole purpose of TSCP was education. "Look, this is the guts of a
>>>>>chess program in 1000 lines, everyone can do it. Take it and improve it". And it
>>>>>still is highly succesful as such. I think there is a BIG difference between
>>>>>basing upon TSCP, which was written in 3 days and hardly more than a framework
>>>>>to learn from, and basing upon Crafty which is a fully developed state of the
>>>>>art chess program with > 5 years work in it.
>>>>
>>>>E:\tscp>copy *.? blob
>>>>board.c
>>>>book.c
>>>>data.c
>>>>DATA.H
>>>>DEFS.H
>>>>eval.c
>>>>main.c
>>>>protos.h
>>>>search.c
>>>>tscp.c
>>>>        1 file(s) copied.
>>>>
>>>>E:\tscp>wc blob
>>>>2314 Lines, 8742 Words, 66517 Characters
>>>>(tscp.c is a tiny stub I used that looks like this):
>>>>/*
>>>>   ** This strange little beastie has only one purpose:
>>>>   ** To allow the compiler to inline like a madman.
>>>> */
>>>>int      king[2];
>>>>#include "book.c"
>>>>#include "search.c"
>>>>#include "board.c"
>>>>#include "data.c"
>>>>#include "eval.c"
>>>>#include "main.c"
>>>>
>>>>With 2000 lines of code, that is about 200 hours of effort.  Given a 40 hour
>>>>work week, that would be 5 weeks to do it.  I expect if you ask him about how
>>>>much time (including all the revisions, documentation, etc.) it will have been
>>>>at least that much effort he put into it.  If you can do it in 3 days, then you
>>>>are a miracle worker.
>>>
>>>Doesn't this also count blank lines and comments? I mean
>>>
>>>#include <stio.h>
>>>#include <stdlib.h>
>>>
>>>//----------------------------------------------------------------
>>>/
>>>// This is my program
>>>//
>>>//----------------------------------------------------------------
>>>
>>>main()
>>>
>>>{  //--------------------------------------------------------------
>>>   //
>>>   //  The following line is printing kukeleku
>>>   //
>>>   //--------------------------------------------------------------
>>>
>>>   printf("kukeleku");
>>>
>>>   return 0;
>>>
>>>}
>>>
>>>Wow, I just wrote 22 lines of code! (worth $220) No, I remember Tom himself
>>>saying that he wrote the original version in 3 days and it was close to 1000
>>>lines of code at the time.
>>
>>I think Tom was either exaggerating or used Stobor as a model and just stripped
>>away stuff he was not using.  The fact that it has doubled in size and has had
>>dozens of releases also shows the effort that went into it.
>>
>>The metric assumes that you write useful comments.  Plied against TSCP it would
>>provide a correct measure.  Plied against your program it would inflate the
>>figure.
>>
>>>>200 hours times $100/hour = $20,000 worth of effort.
>>>>
>>>>Allow me to quote from Tom's readme.txt file:
>>>>
>>>>
>>>>
>>>>                                "LEGAL STUFF
>>>>
>>>>According to copyright law, you are not allowed to distribute copies of TSCP
>>>>or anything that's derived from TSCP without my authorization.
>>>>
>>>>Version 1.4 of TSCP is the first version to include copyright notices, but
>>>>previous versions are also protected under law. If you are distributing an
>>>>earlier version of TSCP or a derivative work without my authorization, you are
>>>>acting illegally.
>>>>
>>>>For more information about copyrights, visit this web page:
>>>>http://lcweb.loc.gov/copyright/"
>>>>
>>>>I don't think you can say the intentions any more clearly than that.  Tom is a
>>>>very reasonable person.  I expect that anyone who asks will get permission.  For
>>>>sure, though, the use of TSCP as a framework deserves a mention of thanks in any
>>>>readme.txt file for a derivative work.  Yes, even if ten years later there is
>>>>not a single line of TSCP left in it.  In my view, the accreditation should be
>>>>perpetual.
>>>>
>>>>> With GNU somewhere in the middle.
>>>>>"Basing" on Crafty and not mentioning it stinks, IMO. Not many will have a
>>>>>problem with doing so with TSCP.
>>>>
>>>>But those people are doing something just as wrong as if they had used crafty.
>>>>It is unethical, illegal (and in my view) immoral.
>>>
>>>Well it's not only a binary matter of right and wrong, the degree of evil is
>>>also a factor. Basing on 3 day's work and modify it for a year, pretending it is
>>>yours is not the same as basing on 5 year's work and modify it for a year and
>>>pretend you just created a top-program. It's the difference between stealing a
>>>cookie and committing a murder. Both are unethical, immoral, illegal. But there
>>>is a difference.
>>
>>To me, the difference is between stealing $20,000 and one million dollars.
>>Equally reprehensible, I would say.
>>
>>And how hard is it to say:
>>"This program used ideas from TSCP."
>>and asking Tom for permission?
>
>Using ideas from tscp is not the problem.
>The problem is using code from tscp and not a small part of it.
>
>I also have some varaibles that have the same name as tscp and some constants
>with the same names and some structures that are the same as tscp.
>
>I even suggested Tom at some point to show him the relevant parts that are
>identical if he has a problem with it but he said that he does not need it and
>there is no problem with it.

In this case, you have done the right thing.  If everyone did that, there would
never be any problems.

Problems generally arise when someone:
1.  Uses something from another program
2.  Does not tell the original author
3.  Says nothing about it
4.  Gets discovered.



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.