Conway's Game of Life is a cellular automaton devised by mathematician John Conway in 1970. It is a zero-player game, meaning that its progression is determined by its initial state, with no further input required. The game is a classic example of emergent complexity and is known for its ability to create diverse patterns and behaviors from simple rules.
You can learn more at Wikipedia
The game is played on a grid of cells, where each cell can be in one of two states: alive or dead.
- Birth: A dead cell with exactly three live neighbors becomes alive (reproduction).
- Survival: A live cell with two or three live neighbors remains alive.
- Death: In all other cases, a cell dies or remains dead.
These simple rules give rise to complex and fascinating patterns and can be used to simulate various biological and natural phenomena.
This repository contains implementations of Conway's Game of Life in multiple programming languages. Each implementation offers different features and user interfaces.
Implementaion | Description |
---|---|
C Terminal Application | A command-line version of the game in C with text-based input and output. |
C++ Terminal Application | A command-line version of the game in C++ with text-based input and output. |
C++ SFML GUI Application | A graphical version of the game in C++ using the Simple and Fast Multimedia Library (SFML). |
Web Application | A simple web app version of the game using basic HTML, CSS and Javascript. |
Python Terminal Application | A command-line version of the game in Python with text-based input and output. |
Python Pygame GUI Application | A graphical version of the game in Python using the Pygame module. |
Ruby Terminal Application | A command-line version of the game in Ruby with text-based input and output. |
For detailed instructions on running each version of the game, refer to their respective README files or directories.
If you'd like to contribute to this project by adding implementations in other programming languages or improving existing ones, please feel free to fork this repository and submit a pull request.
This project is licensed under the MIT License.