I'm too old to start a chess engine from scratch. And my own engines are not a simple enough starting point for a spoon. So I have started a spoon of TSCP181 by Tom Kerrigan. What is spooning? I think that I just made it up. Anyway, spooning is starting with someone else's source code and over time spooning out their code and spooning in original code while keeping a working 'framework'. It is not a fork because nothing of the original code will remain. During the spooning process the new engine will be open source. When the spooning is complete then I may or may not keep the engine open source. The final spoon though will be open source and it will have a different kind of license. The license will state that anyone will be able to use the new engine as the basis for their own engine. They must increase the playing strength by at least 100 elo before they can release it. They must keep their changes closed source. And they must acknowledge that it started as the spooned engine.
What are the thoughts about this process?
Creating a spoon of TSCP181
Moderators: hgm, Rebel, chrisw
-
- Posts: 3196
- Joined: Fri May 26, 2006 3:00 am
- Location: WY, USA
- Full name: Michael Sherwin
Creating a spoon of TSCP181
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
-
- Posts: 2488
- Joined: Tue Aug 30, 2016 8:19 pm
- Full name: Rasmus Althoff
Re: Creating a spoon of TSCP181
1. Given TSCP's licence, it sounds pretty much like a copyright infringement.
2. You cannot re-licence a derived work.
3. It is still a fork, technically.
4. You already have an engine up and running that is 700 Elo above TSCP, so what's the point? Why not use that as framework?
Rasmus Althoff
https://www.ct800.net
https://www.ct800.net
-
- Posts: 3196
- Joined: Fri May 26, 2006 3:00 am
- Location: WY, USA
- Full name: Michael Sherwin
Re: Creating a spoon of TSCP181
Ras wrote: ↑Sat Mar 09, 2019 10:54 pm1. Given TSCP's licence, it sounds pretty much like a copyright infringement.2. You cannot re-licence a derived work.I intend on getting permission from Tom for the interim steps3. It is still a fork, technically."nothing of the original code will remain"4. You already have an engine up and running that is 700 Elo above TSCP, so what's the point? Why not use that as framework?until all the code is replaced?"my own engines are not a simple enough starting point"
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
-
- Posts: 1242
- Joined: Sat Jul 05, 2014 7:54 am
- Location: Southwest USA
Re: Creating a spoon of TSCP181
Interesting concept....there must be at least 10-30 engines out there based on TSCP.....I've tried tscp null, tscp rebel tscp JA Typhoon..etc.....most of them play the same/similar to the original you say 700 elo stronger? Wow!Michael Sherwin wrote: ↑Sat Mar 09, 2019 10:03 pm I'm too old to start a chess engine from scratch. And my own engines are not a simple enough starting point for a spoon. So I have started a spoon of TSCP181 by Tom Kerrigan. What is spooning? I think that I just made it up. Anyway, spooning is starting with someone else's source code and over time spooning out their code and spooning in original code while keeping a working 'framework'. It is not a fork because nothing of the original code will remain. During the spooning process the new engine will be open source. When the spooning is complete then I may or may not keep the engine open source. The final spoon though will be open source and it will have a different kind of license. The license will state that anyone will be able to use the new engine as the basis for their own engine. They must increase the playing strength by at least 100 elo before they can release it. They must keep their changes closed source. And they must acknowledge that it started as the spooned engine.
What are the thoughts about this process?
-
- Posts: 3196
- Joined: Fri May 26, 2006 3:00 am
- Location: WY, USA
- Full name: Michael Sherwin
Re: Creating a spoon of TSCP181
supersharp77 wrote: ↑Sun Mar 10, 2019 1:37 amInteresting concept....there must be at least 10-30 engines out there based on TSCP.....I've tried tscp null, tscp rebel tscp JA Typhoon..etc.....most of them play the same/similar to the original you say 700 elo stronger? Wow!Michael Sherwin wrote: ↑Sat Mar 09, 2019 10:03 pm I'm too old to start a chess engine from scratch. And my own engines are not a simple enough starting point for a spoon. So I have started a spoon of TSCP181 by Tom Kerrigan. What is spooning? I think that I just made it up. Anyway, spooning is starting with someone else's source code and over time spooning out their code and spooning in original code while keeping a working 'framework'. It is not a fork because nothing of the original code will remain. During the spooning process the new engine will be open source. When the spooning is complete then I may or may not keep the engine open source. The final spoon though will be open source and it will have a different kind of license. The license will state that anyone will be able to use the new engine as the basis for their own engine. They must increase the playing strength by at least 100 elo before they can release it. They must keep their changes closed source. And they must acknowledge that it started as the spooned engine.
What are the thoughts about this process?
Thank you. Though I might be a bit confused, . My engine RomiChess is ~700 elo stronger than TSCP181 but has nothing to do with TSCP. Well except, http://www.tckerrigan.com/Chess/TSCP/Co ... 81_mjs.zip has a similar bitboard move generator. That's because I programmed it as a simple bitboard move generator example.Interesting concept
Anyone that is familiar with my various sources know that they are very original. And even though I might start off with TSCP what I end up with won't be anything like TSCP. The only reason I'm starting with TSCP is so I always have a working engine during development.
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
-
- Posts: 893
- Joined: Mon Jan 15, 2007 11:23 am
- Location: Warsza
Re: Creating a spoon of TSCP181
To avoid problems with spooning a non-free engine, I might be tempted to create a very basic bitboard engine. Interested?
Pawel Koziol
http://www.pkoziol.cal24.pl/rodent/rodent.htm
http://www.pkoziol.cal24.pl/rodent/rodent.htm
-
- Posts: 88
- Joined: Thu Oct 06, 2016 9:17 pm
- Location: India
Re: Creating a spoon of TSCP181
I'm here to shamelessly advertise my engine Teki: https://github.com/Mk-Chan/Teki
It is MIT based (the lc0nn branch is GPL) and is meant to be a simple bitboard engine. Do take a look at the code to see if it suits you and feel free to *spoon* it.
It is MIT based (the lc0nn branch is GPL) and is meant to be a simple bitboard engine. Do take a look at the code to see if it suits you and feel free to *spoon* it.
-
- Posts: 3196
- Joined: Fri May 26, 2006 3:00 am
- Location: WY, USA
- Full name: Michael Sherwin
Re: Creating a spoon of TSCP181
Yes I would be interested and I think others would be interested also.
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
-
- Posts: 3196
- Joined: Fri May 26, 2006 3:00 am
- Location: WY, USA
- Full name: Michael Sherwin
Re: Creating a spoon of TSCP181
I will take a look!mkchan wrote: ↑Mon Mar 11, 2019 9:22 am I'm here to shamelessly advertise my engine Teki: https://github.com/Mk-Chan/Teki
It is MIT based (the lc0nn branch is GPL) and is meant to be a simple bitboard engine. Do take a look at the code to see if it suits you and feel free to *spoon* it.
However, the experiment that I want to do is better done by using a very fast lookup move generator like GNUChess4 with jump tables done in assembler. I do not need bitboard because there will be no evaluation function of any kind. Not even pst. All I really want is a simple mailbox engine that I can spoon.
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
-
- Posts: 12542
- Joined: Wed Mar 08, 2006 8:57 pm
- Location: Redmond, WA USA
Re: Creating a spoon of TSCP181
TSCP is a bad choice.Michael Sherwin wrote: ↑Sat Mar 09, 2019 10:03 pm I'm too old to start a chess engine from scratch. And my own engines are not a simple enough starting point for a spoon. So I have started a spoon of TSCP181 by Tom Kerrigan. What is spooning? I think that I just made it up. Anyway, spooning is starting with someone else's source code and over time spooning out their code and spooning in original code while keeping a working 'framework'. It is not a fork because nothing of the original code will remain. During the spooning process the new engine will be open source. When the spooning is complete then I may or may not keep the engine open source. The final spoon though will be open source and it will have a different kind of license. The license will state that anyone will be able to use the new engine as the basis for their own engine. They must increase the playing strength by at least 100 elo before they can release it. They must keep their changes closed source. And they must acknowledge that it started as the spooned engine.
What are the thoughts about this process?
It is full of globals that make a SMP version difficult.
I would suggest a different engine as a starting point.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.