The article states the goal to be under 2000 characters, to state it in terms of lines of code (as the submitter has) is kinda misleading when the following is considered to be one line:
I don't think there is (without what follows)... I've tried a couple experiments, but without adding spaces I don't think it works. (though if you have one * on its own, followed immediately by a space, it keeps the * there).
The correct way, though: add two spaces to the front. Then you get mono-spaced font, reproduced verbatim.
use to find that way of thinking mostly in perl hackers.
A pity that people choose to sacrifice a lot of readability just to save a few characters in the source... it's not even justifiable in a interpreted language... in a language that you have to compile it's criminal
The source is not intended to be readable. The glory is in the 1433 characters total (or 133 lines, if you prefer that metric). Everyone knows that it is artificial, but it does not matter. The spirit is similar to the 10K Javascript contest (see http://10k.aneventapart.com/ )
In order to read the code, it is helpful to understand the basic algorithm (recursive negamax search). Here is a good explanation of minimax, negamax and alphabeta: http://www.hamedahmadi.com/gametree/
Without attempting to read the obscured code, the reason for the middling high Elo lies in the algorithms implemented. One of the AI discoveries is the sad fact that chess does not need intelligence, just horse power and a good per move check list. The algorithms listed provide both...assuming a decent implementation--- I can't tell because I'm not about to translate the code :)
http://users.ox.ac.uk/~uzdm0006/scans/1kchess/
Micro-Chess, from 1976, which ran on a KIM-1 (6502) machine and used 1.1K of RAM.
http://users.telenet.be/kim1-6502/microchess/microchess.html
Toledo Javascript Chess Game
http://nanochess.110mb.com/chess4.html
+ TOLEDO JS1K orking demo: http://js1k.com/2010-first/demo/699