Fruit 1.0 anniversary

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

Ryan Benitez
Posts: 719
Joined: Thu Mar 09, 2006 1:21 am
Location: Portland Oregon

Re: Fruit 1.0 anniversary

Post by Ryan Benitez »

mcostalba wrote:
Xann wrote:Today is 2014-03-17
Today is a good day for computer chess!

I downloaded senpai and give it a quick look (I will read it careful with time), I found a sense of familiarity and deja vu and I realized from where all this started: Fruit then Glaurung then Stockfish. Without your great engine even the engine I and other people work on would have not existed. IMHO you are one of the very few that really contributed to computer chess, one of the very few that opened a path that other people have followed.

So the news that you still have the will to dedicate time to this hobby is really a great news for all the community.

Sorry if now I ask a stupid technical question, but it is years that it bothers me. The random numbers of Polyglot book are really random or do you remember how you generated them? Eventually I'd like to use the original pseudo-random generator instead of copy the verbatim as are now:

https://github.com/mcostalba/Stockfish/ ... c/book.cpp

Thanks for your answer.
Glaurung used the coding style of Rock (Chess-64).
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Fruit 1.0 anniversary

Post by hgm »

mcostalba wrote:The random numbers of Polyglot book are really random or do you remember how you generated them? Eventually I'd like to use the original pseudo-random generator instead of copy the verbatim ...
Indeed, I second that. I would also very much like to remove that list from Polyglot and XBoard.
Xann
Posts: 127
Joined: Sat Jan 22, 2011 7:14 pm
Location: Lille, France

Re: Fruit 1.0 anniversary

Post by Xann »

Hi Marco!

Needless to say, such high praise from the top programmer of the current era is a great honour.

Regarding the familiarity, it depends on the scanning level you applied: syntactic or semantic.

PolyGlot hash keys are random + filter. If that is your calling, there is some hope that an algorithm can be devised (estimated probability: 25%). The filter will take additional time though. Contact me if you are willing to go further.
Xann
Posts: 127
Joined: Sat Jan 22, 2011 7:14 pm
Location: Lille, France

Re: Fruit 1.0 anniversary

Post by Xann »

Hi HGM!

This will not help you feel any better, but this table comes from development on Palm devices. There is no difference between "HDD" (protected RAM) and RAM. It therefore makes sense to put constant tables in the executable in order to minimise RAM usage, preferably under the 16KB limit of the older models.
mcostalba
Posts: 2684
Joined: Sat Jun 14, 2008 9:17 pm

Re: Fruit 1.0 anniversary

Post by mcostalba »

Xann wrote:Hi Marco!

Needless to say, such high praise from the top programmer of the current era is a great honour.

Regarding the familiarity, it depends on the scanning level you applied: syntactic or semantic.

PolyGlot hash keys are random + filter. If that is your calling, there is some hope that an algorithm can be devised (estimated probability: 25%). The filter will take additional time though. Contact me if you are willing to go further.
Thanks for your reply.

Familiarity is regarding choice of the names and factoring of the functions, so is a middle way between coding style (that is different) and semantic (that I still have to investigate).

I have sent you a PM regarding PolyGlot.
PK
Posts: 893
Joined: Mon Jan 15, 2007 11:23 am
Location: Warsza

Re: Fruit 1.0 anniversary

Post by PK »

There is one part of Fruit legacy I strongly dislike: refusal to use direction (vector) loops in eval_piece(). It was no problem in original Fruit, where these loops dealt only with pretty basic mobility. Current code, on the other hand, is a bit more complex, and therefore more repetitive. Trying to modify it would mean adding the same modification in 4 or 8 places, which seems painful.

So the question is: if I create a patch introducing loops and removing these repetitions, will it be accepted?
User avatar
Daniel Mehrmann
Posts: 858
Joined: Wed Mar 08, 2006 9:24 pm
Location: Germany
Full name: Daniel Mehrmann

Re: Fruit 1.0 anniversary

Post by Daniel Mehrmann »

PK wrote:There is one part of Fruit legacy I strongly dislike: refusal to use direction (vector) loops in eval_piece(). It was no problem in original Fruit, where these loops dealt only with pretty basic mobility. Current code, on the other hand, is a bit more complex, and therefore more repetitive. Trying to modify it would mean adding the same modification in 4 or 8 places, which seems painful.

So the question is: if I create a patch introducing loops and removing these repetitions, will it be accepted?
Yes, of course we'll look at this and accept if it fit. I agree with you that this special code is dangerous to do mistakes. It's complex and not clean looking anyway.

You can post the patch here or send me an e-mail. Best solution would be on github anyway. :D
Jamal Bubker
Posts: 326
Joined: Mon May 24, 2010 4:32 pm

Re: Fruit 1.0 anniversary

Post by Jamal Bubker »

Thank you Fabien for reporting the birth of this new project !
Many thanks to Daniel et Ryan for creating and developping this new project !