From 334f70f5a2f63ec636ac1a8bc375ce51effba424 Mon Sep 17 00:00:00 2001 From: Mel Date: Sun, 14 Nov 2021 22:46:23 +0100 Subject: Update GoL example with functions. --- examples/game_of_life.rh | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) (limited to 'examples/game_of_life.rh') diff --git a/examples/game_of_life.rh b/examples/game_of_life.rh index a9da2bc..118effb 100644 --- a/examples/game_of_life.rh +++ b/examples/game_of_life.rh @@ -1,15 +1,19 @@ FIELD_WIDTH = 15; FIELD_HEIGHT = 15; -empty_row := [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; +create_empty_field := fn { + empty_row := [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; -field = [ - empty_row, empty_row, empty_row, - empty_row, empty_row, empty_row, - empty_row, empty_row, empty_row, - empty_row, empty_row, empty_row, - empty_row, empty_row, empty_row -]; + [ + empty_row, empty_row, empty_row, + empty_row, empty_row, empty_row, + empty_row, empty_row, empty_row, + empty_row, empty_row, empty_row, + empty_row, empty_row, empty_row + ] +}; + +field = create_empty_field(); # Place a glider on the field. field[1][2] = 1; @@ -19,13 +23,7 @@ field[3][2] = 1; field[3][3] = 1; loop { - new_field = [ - empty_row, empty_row, empty_row, - empty_row, empty_row, empty_row, - empty_row, empty_row, empty_row, - empty_row, empty_row, empty_row, - empty_row, empty_row, empty_row - ]; + new_field = create_empty_field(); # Compute new field. y = 0; -- cgit 1.4.1