This is a successor project to a simple game of life implementation in C using ncurses that I wrote in one evening for no particular reason a little while ago. That version had some stubborn and pernicious problems that I had trouble resolving, and so I decided to start over with a fundamentally different approach, and in a different language. I've intentionally avoided looking at other implementations of game of life because, for me, the fun is in finding the problems, solving them, and making the implementation smarter, faster, and more elegant. Because of this approach, the design is very naive, and I'm sure that I'm re-inventing 30 years worth of wheels with every optimization scheme I try, but I don't really care.
Ultimately I want this to be a very general framework, capable of simulating many different types of cellular automata with arbitrary rulesets. As the project develops, this README will be updated with a more detailed roadmap of current challenges and planned features.