It's a lot more than 10% with Go and 10% is more like 10 ELO and at this level 10 ELO is very hard to come by. I cannot give up 10 ELO before even getting started.rreagan wrote:Don, do you think this linear performance difference is that significant? If your engine was 10% slower, doesn't that amount to about 5 ELO? I have often wondered if it would be better to sacrifice some raw speed for an easier time programming. For instance, would you sacrifice 10% NPS speed if you could test twice as many ideas per year? Or is the answer different when you're competing for #1 compared to the rest of us hobbyists?Don wrote:I think a D program could still be competitive with a C program and although Go is fast and native I have my doubts it will every rival C in performance. When I say "rival" I don't mean within 20 or 30% but I mean really fast, like within 5%...
The bottleneck in computer chess isn't ease of programming. It's being able to test ideas fast enough - not implement them. Being more expressive isn't going to help. Usually, if you get too "expressive" you kill the performance anyway - for example I could use associative arrays and other cool stuff to make programming easier but that would not be good for chess. That expressiveness is ideal for big projects and constant development of new source and rapid prototyping and that type of thing - but if you have a self-contained small problem (like a chess program) and you know where you are going with it then even assembly programming would not be out of the question.