Tic Tac Toe
- Not to be confused with Tic Tac Toe Grow.
- This is still a work in progress. It may be changed in the future.
Tic Tac Toe is an esoteric programming language created by User:JWinslow23 in 2013. This takes the form of Tic-Tac-Toe games.
Introduction
The Tic-Tac-Toe board is labelled as follows.
a1|a2|a3 --+--+-- b1|b2|b3 --+--+-- c1|c2|c3
For example, c3 means move in the bottom right corner.
You can designate yourself as X or O, but it must stay that way throughout the whole program.
The commands are as follows (functions are the same as in BF):
+ | - | > ---+---+--- < |NOP| [ ---+---+--- ] | , | .
Any square you go on that wins is a NOP (e.g. if you go on a1 and you went on b2 and c3, the cell will not be incremented).
Syntax
At the start of every program is a declaration of who you are playing as (X or O).
I will play as X/O.
Next is a declaration of a game (they must be numbered from 1 on up, and in the right order). There can be as many games as needed.
Game 1:
Then, the game is played. X always goes first, X and O must alternate moves, and you designate a square being played on by saying:
X/O went on name_of_square.
When you win a game without declaring a new one, any more moves made afterwards will result in an error.
Example programs
Infinite loop
I will play as X. Game 1: X went on a1. O went on a3. X went on b3. O went on b1. X went on c1. O went on a2. X went on b2.
This corresponds to +[]
in BF.
Cat program
I will play as X. Game 1: X went on c2. O went on a1. X went on b3. O went on b2. X went on c3. O went on c1. X went on a3. Game 2: X went on c2. O went on b2. X went on c1. O went on b3. X went on c3.
This corresponds to ,[.,]
in BF, and requires two games to be played.
Interpreter
- Common Lisp implementation of the Tic Tac Toe programming language.