NHacker Next
  • new
  • past
  • show
  • ask
  • show
  • jobs
  • submit
Build a working game of Tetris in Conway's Game of Life (2014) (codegolf.stackexchange.com)
szopa 3 days ago [-]
This is simply… incredibly impressive. I wasn’t expecting they would build a computer all the way up from a CPU and memory to an assembler to a compiler, all in the game of life.

Kudos.

Cthulhu_ 3 days ago [-]
It reminds me of people building computers in Minecraft, but for Game of Life they had to go another abstraction level lower and build the basics like wires and transistors out of GoL constructs.
eichin 3 days ago [-]
I was actually a tiny bit disappointed - I was hoping for a closer coupling of tetris-logic to life-logic :-) Per https://conwaylife.com/wiki/Universal_computer the first turing-machine-in-Life goes back to 2000, and "building a CPU to run code" is at this point the "obvious" way to do it. See https://nicholas.carlini.com/writing/2020/intro-to-circuits-... for a tutorial with a (circular) "final goal of designing an Intel 4004 and using it to simulate the game of life."
OscarCunningham 3 days ago [-]
Right, they made the odd choice to use Life to simulate a different cellular automaton and then built logic gates in that automaton. But you can in fact build logic gates directly with gliders in the Game of Life itself. The extra level of abstraction multiplies the area of the final result by about 20000.
dang 3 days ago [-]
Related. Others?

Build a Working Game of Tetris in Conway's Game of Life - https://news.ycombinator.com/item?id=38760965 - Dec 2023 (2 comments)

Build a working game of Tetris in Game of Life (2013) - https://news.ycombinator.com/item?id=32907893 - Sept 2022 (1 comment)

Build a Working Game of Tetris in Conway's Game of Life (2014) - https://news.ycombinator.com/item?id=22871417 - April 2020 (11 comments)

Building a Working Game of Tetris in Conway's Game of Life - https://news.ycombinator.com/item?id=15247935 - Sept 2017 (2 comments)

Building a working game of Tetris in Conway's Game of Life - https://news.ycombinator.com/item?id=15246348 - Sept 2017 (46 comments)

modeless 3 days ago [-]
Building larger switching squares out of smaller ones reminds me of the infinite zoom recursive life game: https://oimo.io/works/life/
reeeeee 2 days ago [-]
Thank you for posting this, I never saw this before. This is seriously impressive, and it would make a nice screensaver.
fosterfriends 3 days ago [-]
I love how projects like this can give folks a chance to understand and derive computer mechanics from scratch, in a visual way. I feel like living in the land of bits and high level constructs for too long really creates black boxes and fear that it’s too complicated to ever understand the metal. Projects like that dismistify things in clean 2d space. Props, and great write up!
mukunda_johnson 3 days ago [-]
TIL that Conway's game is turing complete. Wow.
throwaway71271 3 days ago [-]
then you will be even more impressed by Rule 110 being turing complete with a specific background pattern.

https://en.wikipedia.org/wiki/Rule_110

Joel_Mckay 3 days ago [-]
It gets even funnier, some folks implemented a version in geometry nodes within Blender.

https://www.youtube.com/watch?v=iSoqddxoCl8

One could do all sorts of fun abstractions with the simulation data. =3

nomilk 3 days ago [-]
Struggling to wrap my head around how this is possible. Seems others are too [0]. A computer made in, say, minecraft can be given inputs. But since GoL is a zero player game (the player only selects the initial states), how can it possibly compute anything other than the static inputs it's originally provided? Perhaps that's sufficient for Turing Completeness? (when I click 'Run' on the provided link, my chrome tab becomes unresponsive; was hoping to disprove my own disbelief by playing Tetris in GoL but thus far unsuccessful, yet remaining hopeful!).

[0] https://stackoverflow.com/questions/394957/why-can-conway-s-...

[1] https://copy.sh/life/?pattern=TetrisOTCAMP.mc

hcs 3 days ago [-]
> how can it possibly compute anything other than the static inputs it's originally provided? Perhaps that's sufficient for Turing Completeness?

Yes, the basic Turing machine model isn't "interactive", it takes some initial input and runs from there.

Edit: Maybe a better way of putting this:

Since you can build a Turing machine as a GoL pattern that will interact with another pattern (its input), analysis of GoL patterns includes analysis of Turing machines, generally.

AlotOfReading 2 days ago [-]
The basic Turing machine model isn't interactive, but Turing also discussed "choice" machines that were. They're a variant of what we now call non-deterministic turing machines where the decision is determined by a human oracle instead of some other method.
chunkyks 3 days ago [-]
If you think about it, a Turing machine is also Turing complete, and also is a zero player game where one only sets initial inputs...
FartyMcFarter 3 days ago [-]
Game of life is no different from other computers in this regard. You can make it have no inputs (just disconnect your mouse/keyboard in the case of your computer), or you can make it have inputs (just have a few GoL cells be controlled externally).
OscarCunningham 3 days ago [-]
Right. The principled way to interact with a GoL computer is to implement yourself in the game.
MPSimmons 2 days ago [-]
it turns out it CAN play Doom. That's impressive
SchwKatze 2 days ago [-]
This is the first stackexchange answer that I see that starts with accomplishments like a essay.
sargon23 3 days ago [-]
I only have one word to say about this.

Doom.

neontomo 3 days ago [-]
I wonder why nerds are obsessed with Game of Life. I know I am one of them, but I still don't quite get why it hits the spot so well
vouaobrasil 3 days ago [-]
The obsession with technical things is a reflection of how divorced we have become with the natural world. As we need to attend less and less to basic needs, the mind turns inwards, and not always for the better.
oneeyedpigeon 3 days ago [-]
I see it as a sort of computer programming equivalent of god. It's so fundamental, beautiful in its simplicity and diversity. The people doing this work are like extreme devotees.
bungula 2 days ago [-]
I see it as a better Physics - current Physics as we understand it is messy, continuous, unintuitive, and contradictory. Kinda frustrating for computer science folks.

Game of Life on the other hand is so simple it can be written up in a few lines of code, and still can give rise to endless complexity.

at_a_remove 2 days ago [-]
Easy to implement, but much room for optimization.

The rules are simple, but give rise to complexity.

Despite conservation of mass and such not being a part of the rules, what appear to us to be "objects" arise, and can even exhibit velocity! Physics-lite results out of nowhere.

Finally, nerds like simulations.

Towaway69 3 days ago [-]
Something to do with the name perhaps!

Game of Death doesn’t sound half as fun ;)

Y_Y 3 days ago [-]
That's what we spend the rest of our time playing
briandear 3 days ago [-]
I woke up to this article and now I feel profoundly inadequate.
6 days ago [-]
256_ 2 days ago [-]
It's an ugly and stupid computer and the "display" is barely visible. It also doesn't have a cache, or MUL/DIV/MOD instructions. Not very impressive. It wasn't even actually made in the Game of Life.

Also, if I had 1p for every time someone saw a hobbyist CPU and asked "can it run Doom", I'd be a zillionaire.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
Rendered at 22:31:01 GMT+0000 (Coordinated Universal Time) with Vercel.