is the assembly language of a game called CoreWars
. The playing field is a linear wraparound "core" memory where each memory location stores an instruction. The goal is for your assembly program to overwrite or otherwise stop the execution of opponent programs within the core. This is therefore a game stressing assembly language optimization above all else.
There are three main strategies in Core Wars:
- Paper - these programs replicate themselves all over the core in hopes of writing over any copies of the enemy. It is also resilient to being killed because there are always more copies.
- Scissors - these programs scan the core for the opponent program and bombs them. Bombing can be done by writing in illegal instructions which causes the opponent process to be killed or other hostile code.
- Rock - these programs bomb the core indiscriminantly.
In general, paper beats rock, rock beats scissors, scissors beats paper.
It is also the name I gave to my first (sucky) robocode 'bot. -- Paul Ingemi