main
 1#include <stdio.h>
 2#include <stdlib.h>
 3#include <unistd.h>
 4#include <time.h>
 5#include "world.h"
 6
 7void clear_screen(){
 8  system("clear");
 9}
10
11int env_fetch(char* env_name, int default_value) {
12  char *value = getenv(env_name);
13  return (value != NULL) ? atoi(value) : default_value;
14}
15
16void world_start(World *world) {
17  srand(time(NULL));
18  clear_screen();
19  printf("%d x %d world\n", world->width, world->height);
20  sleep(2);
21
22  World *new_world = world;
23  int i = 0;
24
25  while(true) {
26    printf("GENERATION: %d\n", i);
27    world_print(new_world);
28    World *tmp = world_evolve(new_world);
29    world_destroy(new_world);
30    new_world = tmp;
31    sleep(1);
32    clear_screen();
33    ++i;
34  }
35}
36
37int main(int argc, char **argv) {
38  int width = env_fetch("COLUMNS", 5);
39  int height = env_fetch("LINES", width);
40
41  world_start(world_random(width, height));
42  return 0;
43}