Tic-tac-toe (aka noughts and crosses) in Haskell. This is a toy project for implementing game logic, IO, and memoization in a purely functional context.
haskell-tac-toe implements a min-maxing AI and supports arbitrary board sizes.
./tictactoe [size of board] [number of human players]
e.g., to play on a 3x3 board with 2 human players:
./tictactoe 3 2
or to play 4x4 against the AI:
./tictactoe 4 1
or to spoil the movie WarGames:
./tictactoe 3 0