game of life in game.ml -> todo : extension generates invalid patterns when used directly with ocamlc/opt