Author: leonid
Date: 14:12:19 11/09/99
Go up one level in this thread
On November 09, 1999 at 16:52:22, Christophe Theron wrote: >On November 09, 1999 at 15:32:53, leonid wrote: > >>On November 09, 1999 at 14:05:56, Christophe Theron wrote: >> >>>On November 08, 1999 at 06:02:53, leonid wrote: >>> >>>>On November 08, 1999 at 04:40:26, Bruce Moreland wrote: >>>> >>>>>On November 07, 1999 at 22:58:55, leonid wrote: >>>>> >>>>>>If you write your chess program only for fun, use every language that you could >>>>>>like. But if you expect that "others" should observe your happiness, use >>>>>>Assembler. Only this language will give your game extra ply over others. It will >>>>>>naturally induce into your game some extra glamoring brillances able to capture >>>>>>the attention of human eyes. And since the human is a social animal that crave >>>>>>for attention, Assembler is the only natural language for him to express >>>>>>himself. >>>>> >>>>>Assembler won't yield an extra ply. >>>>> >>>>>bruce >>>> >>>>If extra ply signify game that goes five or six time more rapidly, Assembler >>>>give you just this. >>>> >>>>Leonid. >>> >>> >>>Not a chance. You'll get 20% faster, maybe 25%, and that's all. >>> >>>And you'll need 3 times more developpement time, and a lot of crazy bugs to >>>chase. >> >>> >>>It's not worth it anymore. The time you spend on assembly programming, you'd >>>rather spend it on algorithmic improvements. There are plenty of things to >>>improve in any chess program. No current chess program is so perfect that the >>>only thing left to do is to re-code everything in assembly. >>> >>>I even know some chess programmers who are porting from assembly to C. It's a >>>wise decision. >>> >>> >>> >>> Christophe >> >> >>Disagree with you about the time (only 25%) and bugs, but maybe we speak about >>two different things. About 25% the most - wrong. About writing the chess game; >>we can speak about two different writing. I speak about writing the game almost >>100% from your head, you, I presume, doing it after the theory that is already >>there. When you write "your own" logic it will take anyway some considerable >>time to achieve the final version. When you will take the logic of others the >>time to realize your code could be quit short. Speeding this time even more >>looks logical. About the bugs in Assembler. I don't think they are more prolific >>that in C. Beside, it is much more difficult to find your bugs in the language >>that is half secret to you, like C. On Assembler you see everything on the >>surface and you are master of your code. Forgetting about theory, I can say you >>that I have seen as much buggy Assembler written programs as the C one. >>Rewritting the game on C have sense only because of portability and easy contact >>with other programmers. Here, maybe, we agree. >> >>Leonid. > > >My statements are based on experience. I have already written a chess program in >assembly from scratch, and I have done the same in C. > >C is not half secret to me. If you are able to write assembly, then you are >easily able to read the output of the compiler and to check if it is optimal or >not. I do that often and sometimes rewrite pieces of code to help the compiler >optimize it better. > >About bugs, I stronly believe you do less of them in C. This is also based on >years of assembly and of C. > >A chess program is never totally stable in his design. It's a moving piece of >code, and being able to make deep changes rather quickly is one of the keys of >success, because you never know where you are going to at the beginning of your >project. > >Assembler keeps you focused on how you do things. C lets keep you focused on >what you want to do with litle impact on performances. > >In fact I consider C to be a big macro-assembler. Having an assembly chess >program is something that can be explained only by the history of the program >(the project has been initiated at a time C compilers were not so good). >Starting an assembly chess program nowadays is IMO a "positional mistake". :) > > > > Christophe Quit interesting. But what kind of Assembler you used? Stand alone Assembler, or some possibility to use assembler coding from the high language? Came your C package from the same compagny (Microsoft, Borland) as your Assembler? Leonid.
This page took 0.01 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.