John Conway è stato un matematico britannico il cui contributo teorico, a dirla con sincerità, mi sfugge. Ma è stato anche l’inventore del “gioco della vita” e io mi ricordo quando alle superiori, al posto di ascoltare lezione, stavo nell’aula di informatica e cercavo di programmare questa cosa.
In realtà è un esercizio utile, e tutti i giovani programmatori prima o poi si schiantano su questa cosa. Per arrivarci in fondo bisogna imparare a gestire le matrici, gli indici, gli indirizzi. E poi è divertente. Le regole sono:
- se una cella è viva, e confina con due o tre celle vive, resta viva (sopravvivenza)
- se una cella è viva e confina con quattro o più celle vive, muore (sovrappopolazione)
- se una cella è viva e confina con meno di due celle vive, muore (solitudine)
- una cella vuota che confina con tre celle vive diventa viva a sua volta (riproduzione)
È un sistema caotico: nonostante l’evoluzione di ogni partita sia completamente predeterminato dalla condizione iniziale, stati iniziali lievemente diversi generano sviluppi anche molto diversi. Inoltre non c’è modo di prevedere a priori il comportamento di una configurazione: bisogna compiere i passi e vedere dove si va.
Come modesto tributo ho pensato di fare una manovra a tenaglia: le immagini della galleria le ho fatte a mano, e poi ho scritto un pochetto di codice R (disponibile qui) per chi volesse criticare le mie doti di programmatore.
John Horton Conway (26 December 1937 – 11 April 2020). In memoriam.