{"action":"opened","issue":{"url":"https://api.github.com/repos/stewartfgriffin/gameOfLife/issues/1","labels_url":"https://api.github.com/repos/stewartfgriffin/gameOfLife/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/stewartfgriffin/gameOfLife/issues/1/comments","events_url":"https://api.github.com/repos/stewartfgriffin/gameOfLife/issues/1/events","html_url":"https://github.com/stewartfgriffin/gameOfLife/issues/1","id":109399662,"number":1,"title":"Todo: stop doing the simulation with arrays","user":{"login":"stewartfgriffin","id":11276895,"avatar_url":"https://avatars.githubusercontent.com/u/11276895?v=3","gravatar_id":"","url":"https://api.github.com/users/stewartfgriffin","html_url":"https://github.com/stewartfgriffin","followers_url":"https://api.github.com/users/stewartfgriffin/followers","following_url":"https://api.github.com/users/stewartfgriffin/following{/other_user}","gists_url":"https://api.github.com/users/stewartfgriffin/gists{/gist_id}","starred_url":"https://api.github.com/users/stewartfgriffin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stewartfgriffin/subscriptions","organizations_url":"https://api.github.com/users/stewartfgriffin/orgs","repos_url":"https://api.github.com/users/stewartfgriffin/repos","events_url":"https://api.github.com/users/stewartfgriffin/events{/privacy}","received_events_url":"https://api.github.com/users/stewartfgriffin/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-10-01T22:49:29Z","updated_at":"2015-10-01T22:49:29Z","closed_at":null,"body":"Currently the grid uses arrays, which is fine for acting as the backing data structure for the display logic,  but not for processing the simulation. The problem is that the fixed size arrays cannot properly be used to simulate cells in an infinite grid (due to the arrays being fixed sized). Even if we resize the arrays and do some book-keeping to track the visible display area we will be wasting a lot of space. \r\n\r\nBetter to use a data structure more suited to holding a sparse matrix (hash table, yale sparse matrix format, etcetera) so as to improve the simulation."}}