IMHO Fruit was a huge milestone for computer chess. Here are the main acheivements (IMHO):
Simple and Clear Code: Before 2004, there was a "code-for-speed" mentality. Fabien changed that and proved that simple and clear code can also be result in a strong engine
Defensive Code: Fabien has lots of asserts scattered around his code. This emphasizes the "no-bugs" philosophy.
Speed Testing: I believe Fabien was one of the first to test his engine changes at hyper-fast time controls. Before 2004 there was a "will this work at long time controls" mentality — Fabien showed that hyper-fast time controls are all that is really needed to test the value of changes
History Reductions: Fruit 2 introduced "history reduction", which are now called "Late Move Reductions". This opened the floodgates for the foundational ideas embedded in modern selective search.
Dariusz wrote: ↑Wed Jan 17, 2024 4:50 pm
On the occasion of approaching 20 years since the publication of the Fruit 1.0 chess engine, I invite those interested to read
Steve Maughan wrote: ↑Thu Jan 18, 2024 2:41 pm
[*]Speed Testing: I believe Fabien was one of the first to test his engine changes at hyper-fast time controls. Before 2004 there was a "will this work at long time controls" mentality — Fabien showed that hyper-fast time controls are all that is really needed to test the value of changes
I think so too. And that's why I decided to have the engines play having 1 minute / game + 0.6 seconds / move in the MCERL cycle.
It is no surprise that today modern engines play with incredible power and do not need minutes or even tens of seconds to find the strong moves.
Below is an example of a position in which Alexandria 5.1.1 found in 1 second an amazing tactical strike 22...Bxh3!!
r1b2rk1/2q3pp/Pn1p4/1Q1Pp3/4p2b/1NP4P/5PP1/RNB2RK1 b - - 3 22