Game of Life with p5.js; an interpretation

Game of life is one of the first implemented computer simulations, proposed by John Conway in the 1940s. The simulation was proposed as an experiment to model an evolving population. The population is represented by a set of squares in a grid followed through a period in time, where each square represents an individual. Individuals can be either dead or alive, depending on the previous state of their neighbours.

Starting from a chosen initial population, the Game of Life evolves according to the following rules.

The classical Game of Life is often displayed on a grid where living individuals are black cells and dead individuals are white cells, evolving over time.

As a play on this concept, the Game of Life animation displayed below follows the same concepts, but living individuals have different colors, are presented in circles and slowly fade out. Additionally, by clicking/touching the animation, new shapes are introduced in the animation.

Check the fullscreen version here

This (relatively naive) implementation uses the p5.js library, a canvas-based animation library for JavaScript. As someone who mainly programs simulations, my animation skills are quite rudimentary. This is unfortunate, because animations are among the best ways of sharing research results. As such, consider this animation as a resolution to better myself on my science communication skills.

Edit: Unfortunately, John Conway has recently passed away. He will not be forgotten. Hopefully this post can serve as a small token to his legacy.