[HN Gopher] Build a working game of Tetris in Conway's Game of L...
       ___________________________________________________________________
        
       Build a working game of Tetris in Conway's Game of Life (2014)
        
       Author : wxw
       Score  : 265 points
       Date   : 2024-12-27 07:04 UTC (4 days ago)
        
 (HTM) web link (codegolf.stackexchange.com)
 (TXT) w3m dump (codegolf.stackexchange.com)
        
       | szopa wrote:
       | 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_ wrote:
         | 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 wrote:
         | 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 wrote:
           | 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.
        
       | mukunda_johnson wrote:
       | TIL that Conway's game is turing complete. Wow.
        
         | throwaway71271 wrote:
         | 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 wrote:
           | 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 wrote:
         | 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
        
           | chunkyks wrote:
           | 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...
        
           | hcs wrote:
           | > 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 wrote:
             | 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.
        
           | OscarCunningham wrote:
           | Right. The principled way to interact with a GoL computer is
           | to implement yourself in the game.
        
           | FartyMcFarter wrote:
           | 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).
        
         | MPSimmons wrote:
         | it turns out it CAN play Doom. That's impressive
        
       | fosterfriends wrote:
       | 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!
        
       | modeless wrote:
       | Building larger switching squares out of smaller ones reminds me
       | of the infinite zoom recursive life game:
       | https://oimo.io/works/life/
        
         | reeeeee wrote:
         | Thank you for posting this, I never saw this before. This is
         | seriously impressive, and it would make a nice screensaver.
        
       | neontomo wrote:
       | 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
        
         | Towaway69 wrote:
         | Something to do with the name perhaps!
         | 
         | Game of Death doesn't sound half as fun ;)
        
           | Y_Y wrote:
           | That's what we spend the rest of our time playing
        
         | oneeyedpigeon wrote:
         | 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.
        
         | vouaobrasil wrote:
         | 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.
        
         | at_a_remove wrote:
         | 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.
        
         | bungula wrote:
         | 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.
        
       | sargon23 wrote:
       | I only have one word to say about this.
       | 
       | Doom.
        
       | dang wrote:
       | 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)
        
       | briandear wrote:
       | I woke up to this article and now I feel profoundly inadequate.
        
       | SchwKatze wrote:
       | This is the first stackexchange answer that I see that starts
       | with accomplishments like a essay.
        
       | 256_ wrote:
       | 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.
        
       ___________________________________________________________________
       (page generated 2024-12-31 23:02 UTC)