Hi Uri,
Uri Blass wrote:
Hi Roman,
I think that interesting part of chess engine are not only evaluation but also search and move generator.
Uri
I certainly agree on that now but about a year ago when I was starting to work on my engine I wanted to have a working chess engine as fast as possible. I guess this is true for every beginner, they want to see some progress.
Also in all the forums I had a glimpse at that time people were mainly talking about improving their engines so it seemed to me that creating a working chess engine is a piece of cake anyway and the main work is about improving the evaluation function later. A year later now I know that also working on the move generator can be already a lot of fun. At least it was/is for me.
Uri Blass wrote:I printed a lot of my move generator on paper in order to look at the code and think about defining exactly what I want to change.
Uri
I printed a list with all the definitions of my functions to keep track of them.
Uri Blass wrote:The parts that I think that it is better if programmers avoid are:
1)reading pgn
2)understanding winboard(uci) commands
It is better to start from a code that is not working but there are some missing empty chess functions(descreption what they should do can be mentioned in the code) that if you write them the code can work when the programmer can think only about chess and not about winboard code or reading pgn code.
Uri
I don't have any functions dealing with PGN yet but I guess I will write them from scratch when I need them. Implementing UCI/WB isn't as easy as I thought at first and my first try to load my engine as a WB-engine under Arena was not succesfull and only caused Arena to hang. But as my search and eval functions don't work yet I will work on that before I fix the WB interface ony my engine.
Roman