Skip to content

The result of me learning multiple languages/frameworks over time

Notifications You must be signed in to change notification settings

Skaruts/Game-of-Life-in-multiple-languages

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Game of Life in Multiple Languages

I always make a Game of Life when learning a new language or framework, and since over the years I've jumped around between quite a few of them, eventually I ended up with a bunch of Games of Life made in a variety of languages and frameworks. Ultimately, it has also given me a first hand perspective of the difference in performance between the languages/frameworks.

I'm gathering them in this repo just for the heck of it, as I clean them up in my spare time.


Most of the implementations are just a bare bones GoL with the simplest algorithm. A notable exception is the TIC-80 version (Lua), which was made to be more of a game/toy where you can play with some drawing tools and whatnot.

All (or most) of them have a scalar variable m that can be given the values 1, 2, 4, 8 or 16, to make the cells bigger/smaller, respectively: m=1 makes cells of 16x16 pixels and an 80x50 grid, and m=16 makes cells of 1 pixel in a 1280x800 grid.

(Note: if the above isn't true in some particular case, there will probably be a comment next to it explaining how exactly the variable works.)

All of them use the same generation algorithm(s), which is the fastest among the simplest I could come up with so far. They were writen as learning excercises, so I didn't bother with more. Although the simplest algorithm isn't all that bad anyway. I'm not unhappy with it. Maybe one day I'll manage to wrap my head around more complicated algorithms, but that day hasn't come yet.