[HN Gopher] Game of Life, simulating itself, infinitely zoomable
       ___________________________________________________________________
        
       Game of Life, simulating itself, infinitely zoomable
        
       Author : surprisetalk
       Score  : 1404 points
       Date   : 2024-03-23 13:24 UTC (1 days ago)
        
 (HTM) web link (oimo.io)
 (TXT) w3m dump (oimo.io)
        
       | zenmaster10665 wrote:
       | Wow that is so cool. Fractal game of life! Is this just a very
       | specific configuration that repeats in a fractal way?
        
         | monitron wrote:
         | Yes! The delightful reason why this configuration can repeat
         | within itself is that this Game of Life pattern is a machine
         | with the rules of Game of Life built into it. It's calculating
         | and displaying the game step-by-step. If you watch the
         | machinery you can see the "data" flying around between cells
         | and then the cells turning on and off.
         | 
         | This pattern isn't _unique_ - you could certainly come up with
         | infinitely many more machines in Game of Life that do the same
         | thing. But yes, most Game of Life patterns aren 't fractal like
         | this.
        
       | a-ungurianu wrote:
       | This is awesome and very mesmerising.
       | 
       | Is the ability to do this tied to the fact that Game of Life is
       | Turing-complete, or is there a weaker/stronger property that
       | allows for this?
       | 
       | Also, does this count as a "quine"?
        
         | dartos wrote:
         | You can think of it like that. I think that makes sense.
         | 
         | You can build structures within the GoL rules that implement
         | the GoL rules, so...
        
         | Filligree wrote:
         | People have built explicit turing machines in GoL, so it
         | certainly _is_ Turing-complete.
        
           | moritzwarhier wrote:
           | > Is the ability to do this tied to the fact that Game of
           | Life is Turing-complete
           | 
           | sounds like GP is aware of that fact :)
        
             | Filligree wrote:
             | I _think_ that was edited in. Not sure at this point.
        
         | OscarCunningham wrote:
         | It needs to be able to compute, but also to be able to place
         | cells in such a way as to 'display' the result one level up.
        
         | SamBam wrote:
         | I'd say it's certainly in the spirit of a quine. I feel like
         | Hofstadter would love this if he isn't already aware of it.
        
         | samatman wrote:
         | It can't be a stronger property, the essence of Turing-
         | completeness is that a Turing-complete automaton can simulate
         | any other Turing-complete automaton, including itself.
         | 
         | Whether an automaton, capable of scale-invariant self-
         | simulation, but not exhibiting Turing-completeness, is even
         | possible, is a very interesting question. I don't know the
         | answer.
        
       | inthemiddle wrote:
       | Previous discussion:
       | https://news.ycombinator.com/item?id=33978978
        
       | nico wrote:
       | This is really cool, leaves me wondering about the fabric of the
       | universe itself
       | 
       | Could we be living in a infinitely recursive simulation?
        
         | a-r-t wrote:
         | If anyone is interested in reading about this idea, I recommend
         | Stephen Wolfram's "A New Kind of Science" [0] and Max
         | Tegmarks's "Our Mathematical Universe" [1].
         | 
         | [0] https://www.wolframscience.com/nks/
         | 
         | [1] https://space.mit.edu/home/tegmark/mathematical.html
        
           | hackinthebochs wrote:
           | Oh no what have you done
        
           | anthk wrote:
           | The Computational Beauty of Nature, too among:
           | 
           | https://github.com/gwf/CBofN
        
         | kossTKR wrote:
         | Seems most likely, but why is there anything at all to begin
         | with?
         | 
         | .. a feeling deep in the pit of my stomach.
         | 
         | Does anyone else sometimes get these "intuitive flashes of
         | insight" - like your brain configures itself in a pattern that
         | "lifts the veil".
         | 
         | I've been thinking of starting meditating to stabilise or
         | cultivate this state if possible because i've feel like i've
         | been losing this slightly psychedelic ability since i was a
         | kid.
         | 
         | Most often i get it in the hypno/hypopompic phases, sudden
         | flashes of eureka that disappears just as fast, like a loud
         | echo of "wow this is existance", "time is unbelievably deep",
         | "demensions and perspective are bizarre in essence", "is this
         | just a fraction of a shared dream" etc.
        
           | mentos wrote:
           | My thought is that 'things just exist' and the problem is the
           | dimension we experience things in.
           | 
           | Does that make any sense?
        
           | a13o wrote:
           | If you wanna get really lost, consider how the 'aha' feeling
           | could itself be illusory and indicative of nothing at all.
           | Similar to how everything in a dream is convincingly real. Or
           | how ideas sound better when you're high. 'Aha' is not a
           | reliable narrator.
           | 
           | My challenge to people chasing 'aha', is to see how long you
           | can stay in the present moment.
        
           | a_cardboard_box wrote:
           | Why shouldn't stuff be allowed to spontaneously come into
           | existence? Why should there be any rules at all to begin
           | with? If there is truly nothing, then there isn't any rule to
           | force the nothing to stay nothing. So the question becomes
           | "how was the universe chosen to be _this_ way, rather than
           | some other way? ". The choice must be made, but there is no
           | objective reason to prefer any option over any other.
           | "Nothing exists" is a simple answer, but simplicity is not
           | _objectively_ preferred.
           | 
           | I think the presence of this subjective choice forces a
           | subjective experience into existence with the free will to
           | decide it. Though I haven't a clue how the characteristics of
           | the experience are chosen - that's also a subjective choice.
           | It's subjective choices all the way down.
        
         | TomSwirly wrote:
         | Requiring infinite amounts of information to explain a finite
         | universe? Occam's Razor comes down pretty hard on the side of
         | "no".
         | 
         | People have tried to explain the universe with cellular
         | automata and so far none of these systems has even been
         | consistent with our current observations of the universe, let
         | alone predicting some new behavior that would allow us to prove
         | or disprove that the theory was true. (If your theory doesn't
         | predict anything new, it's not a new theory at all!)
         | 
         | Requiring infinite recursion of cellular automata would seem to
         | make the whole problem much harder...
        
           | mseepgood wrote:
           | Since when is the universe finite?
        
             | krapp wrote:
             | The Big Bang involved a finite amount of energy and created
             | a finite amount of matter. New energy cannot be created.
             | Therefore the universe is finite.
        
               | Kranar wrote:
               | You're kind of just making stuff up here. In particular
               | the assertion that the big bang involved a finite amount
               | of energy is entirely unfounded.
               | 
               | It's not that your statement is false, but that there is
               | absolutely no consensus on the matter.
               | 
               | Some physicists make strong arguments that at the big
               | bang the total energy of the universe was 0:
               | 
               | https://en.wikipedia.org/wiki/Zero-energy_universe
        
             | dekhn wrote:
             | Most current models of the universe suggest that it
             | occupies a volume and has a finite number of particles. But
             | these are just models based on observations and
             | constraints.
        
               | Kranar wrote:
               | There is no dispute that the observable universe is as
               | you describe, but there is absolutely no consensus as to
               | whether the universe is finite or infinite.
        
               | krapp wrote:
               | The observable universe _is_ the universe, for all
               | intents and purposes.
        
               | Kranar wrote:
               | That's not true in the context of big bang cosmology.
               | It's true that today we would not be able to observe
               | things beyond the observable universe by definition, and
               | so there's not much purpose in reasoning beyond today's
               | observable universe, but the observable universe changes
               | over time and when reasoning about the early universe
               | there would be differences between a finite universe and
               | an infinite universe.
        
           | Kranar wrote:
           | One of the interesting takeaways of this simulation is that
           | it isn't built upon an infinite amount of information.
           | 
           | This simulation is a finite amount of information being used
           | to describe an infinitely large simulation.
        
           | mistermann wrote:
           | > Requiring infinite amounts of information to explain a
           | finite universe? Occam's Razor comes down pretty hard on the
           | side of "no".
           | 
           | A system whose fundamental nature can be modified /
           | controlled _by ideas spawned within the system itself_ would
           | be extremely cool.
           | 
           | I think a decent argument could be made that we may be in
           | just such a system.
        
         | politician wrote:
         | PBS SpaceTime just did a piece on the theory of a holographic
         | universe yesterday.
         | 
         | https://youtu.be/DoCYY9sa2kU
        
         | SigmundA wrote:
         | https://en.wikipedia.org/wiki/Turtles_all_the_way_down
        
         | breuleux wrote:
         | I agree that this is really cool, but this is a very contrived
         | situation where the entire universe is arranged in such a way
         | as to form a sort of fixed point. The vast majority of
         | configurations of the Game of Life or of the real world are not
         | fixed points and would break the clever tricks that are used to
         | make this.
         | 
         | Also, because the simulation is infinite and speeds up and
         | simplifies itself as you zoom out, you don't properly
         | appreciate the fact that every layer is a thousand times slower
         | than the layer that simulates it and contains a thousand times
         | less cells (I don't know if it's a thousand). If you transposed
         | this to the real world, it would take one kilogram of computing
         | substrate an hour to simulate one gram of matter for 3.6
         | seconds and that's kind of useless.
        
         | HarHarVeryFunny wrote:
         | Well, we don't have the tech to build such a simulator
         | ourselves, so we'd have to be a leaf node of the simulation
         | tree, that has yet to run long enough to discover how to spawn
         | the next levels. But I guess not all leaves are successful at
         | spawning - some just self-destruct.
        
         | monktastic1 wrote:
         | Obligatory: https://qntm.org/responsibility
        
       | screamingninja wrote:
       | Does not work for me in Firefox: `Uncaught TypeError: c[b[k]] is
       | undefined`. Opens normally in the other major browser.
        
         | tedivm wrote:
         | Weird, I viewed it on firefox with no issue. MacOS, latest
         | version of firefox, mostly just privacy blocking extensions.
        
         | Cheer2171 wrote:
         | Same, does not work for me on Android Firefox
        
         | TomSwirly wrote:
         | Does work on FF, MacOS 14.3.1 (Sonoma :-/)
         | 
         | (Some extensions conflict with some webpages, too...)
         | 
         | One day we will get it together so every computer program works
         | on every computer, if we don't collapse our ecosystem first.
        
         | kleiba wrote:
         | Does not work for me either, Firefox on Windows. But I'm
         | getting a different error: this.frames.vb[k] is undefined
        
         | hetman wrote:
         | Weirdly it works fine for me in Firefox but just stays loading
         | forever in Chrome.
        
         | nalinidash wrote:
         | I had to disable Enhanced Tracking Protection AKA ETP from
         | firefox to run it.Otherwise it is stuck on loading screen.
         | 
         | Though it is working with uBlock origin(default settings)..
        
           | rezmason wrote:
           | I've downloaded saharan's repo and poked around the Life
           | Universe project in Chrome and FF-- it seems that the pixels
           | representing the compressed animation are retrieved through a
           | Context2D::drawImage call, and are different in Firefox and
           | other browsers.
           | 
           | It makes sense that ETP would mess with the pixels output
           | from a drawImage call, to fight fingerprinting.
           | 
           | Maybe the ImageLoader can be replaced with a more direct PNG
           | decoder stapled to a fetch(). If I can make that work
           | tonight, I'll create a pull request; this is how I meet the
           | coolest people.
        
             | rezmason wrote:
             | PR submitted!
        
           | cgriswald wrote:
           | There's more going on here. I added the website to the
           | exception list for ETP and I'm still stuck on the loading
           | screen.
        
         | monktastic1 wrote:
         | For me it never loads on Android Chrome.
        
           | matsemann wrote:
           | Firefox it shows "Loading..." but never goes on. On Chrome
           | the page never even loads. Weird.
        
         | kilroy123 wrote:
         | Same in Brave.
        
       | nojs wrote:
       | This is amazing, more detail about how it works:
       | http://b3s23life.blogspot.com/2006_09_01_archive.html?m=1
        
         | waitforit wrote:
         | And by the author of this version:
         | https://blog.oimo.io/2023/04/10/life-universe-en/
        
           | destring wrote:
           | That's so clever. Nothing stands as particularly
           | revolutionary but the author brilliantly solved all the
           | problems to deliver the final product. They are only a
           | undergraduate student as well, they have a bright future
           | ahead.
        
             | Recursing wrote:
             | Why do you write that they're only an undergraduate
             | student? They just finished their PhD
             | https://twitter.com/shr_id/status/1770769090719731873
        
               | FabHK wrote:
               | If you're curious why the document was issued in "year
               | 6":
               | 
               | https://en.wikipedia.org/wiki/Reiwa_era
        
               | Recursing wrote:
               | Thank you! I still don't understand the relationship
               | between "year 6" and undergraduate, or where does it say
               | "year 6". I'm honestly wondering as I don't know anything
               | about Japan
        
               | FabHK wrote:
               | Nothing to do with undergrad/PhD - I was just commenting
               | on the way the date was written (2024-03-21 in
               | Chinese/big-endian format, 21.03.2024 in European/small-
               | endian format, 03/21/2024 in the muddled US format):
               | 
               | At the bottom of the document, it says "Ling He  6 Nian
               | 3 Yue  21 Ri ", where the first two characters denote the
               | Reiwa era which started in 2019 (=year 1 of the Reiwa
               | era). 2024 then is year 6 of that era. And that's just
               | what the next two characters denote: "6 Nian " = year 6.
               | "3 Yue " is month 3 (the character symbolises a moon),
               | and "21 Ri " is day 21 (the character symbolises a sun).
        
       | kzrdude wrote:
       | This is mind blowing; I'm lucky that I've seen hashlife and life
       | in life before, that these additional layers by themselves don't
       | leave me stunned for days.
        
       | HackerLemon wrote:
       | Works on Edge but doesn't appear to be working on Firefox
        
         | dreen wrote:
         | works fine for me on ff/w10
        
       | jader201 wrote:
       | I'm assuming this is only achieved by "cheating" in some way?
       | That is, I don't see how giant pixels can come and go, at a
       | zoomed in level, without breaking the rules of Conway's game of
       | life?
       | 
       | Still cool, but more curious to understand how this works, and if
       | it's actually able to pull it off "legitimately".
        
         | teraflop wrote:
         | Yes, this is legitimate, and there's no cheating.
         | 
         | If you zoom in sufficiently, you can see that the "giant
         | pixels" are really streams of spaceships, arranged in carefully
         | positioned rows and columns that annihilate each other along
         | the pixel's diagonal. These streams can be turned on or off to
         | form the "display" component of each pixel, which is controlled
         | by other parts of the pattern that do the actual computation.
         | 
         | As you zoom in or out, the simulation speed changes. A pixel
         | _seems_ to undergo a discrete state change when zoomed out, but
         | when you zoom in and slow down, you can see how that change is
         | actually executed by many underlying computational steps.
         | 
         | Other links in this thread go into more detail about how it
         | works. The cleverest part is that the simulation is done in
         | (more or less) "constant time" per frame, no matter how deeply
         | you zoom or how fast you accelerate time.
        
           | TomSwirly wrote:
           | That is a good summary, but of course, there is "cheating" to
           | do the infinite amounts of work required in a finite time!
           | 
           | The board appears as if there exist at any time infinite
           | levels of cellular automata going all the way down running
           | things. In fact, they only compute one level deep and then
           | short-circuit to using the "hardcoded" rules of Conway's
           | life, and simply pop up the higher or lower levels on demand.
        
             | teraflop wrote:
             | That's a fair point, but I don't consider that "cheating"
             | any more than Hashlife [1] (which it's based on) is
             | cheating. It's an ingenious trick that guarantees that
             | what's displayed is exactly the same pattern _as if_ all of
             | the infinitely-many higher and lower levels had been
             | simulated, in finite time. The rules of the cellular
             | automaton are never broken, only elided.
             | 
             | In a metaphorical way, it reminds me of the "tying the
             | knot" trick in pure functional languages like Haskell, to
             | turn an infinite computation into a finite data structure.
             | 
             | [1]: https://en.wikipedia.org/wiki/Hashlife
        
               | ShamelessC wrote:
               | You may not consider it as cheating, but that's a
               | reasonable interpretation barring pedantry and is likely
               | what the parent comment was referring to.
        
               | Kranar wrote:
               | It's no more cheating than the fact that 1 = 1/2 + 1/4 +
               | 1/8 + 1/16 + ...
               | 
               | Despite the fact that you can never actually add up an
               | infinite number of terms one by one, you can however,
               | compute what the limit of the sum will be in a finite
               | amount of time. The same principle applies to this
               | simulation, in which it is computing the limit of the
               | process.
        
               | samatman wrote:
               | Eliding intermediate strings of a term rewriting system
               | when you can prove the answer without them isn't cheating
               | in any sense of the term.
        
               | ShamelessC wrote:
               | My point was that while it's not cheating, you can easily
               | infer "what they meant", and as such don't need to defend
               | it's lack of cheating.
        
               | Aurelius108 wrote:
               | Agreed, I think the key here is that the Game of Life is
               | structured enough that many computational steps can be
               | elided in this way. If it was more chaotic, this couldn't
               | happen. The realization that GoL can be used to run one
               | GoL cell in isolation is the brilliance here I think.
               | Once you can decompose one single cell into GoL, you can
               | also compose GoL into one cell and save computational
               | cycles. Then suddenly it can be GoL all the way down.
        
               | karmakaze wrote:
               | I don't know the "tying the knot" trick, but I imagine it
               | to be something like a proof by induction of self-
               | simularity being exploited to share computation at
               | different zoom levels.
        
               | breuleux wrote:
               | I might be missing something, but I don't think you even
               | need Hashlife for this. The pattern is regular enough
               | that you could just flat out store a static (x, y, t,
               | state) map of a single cell and apply it fractally in
               | order to compute the state of any part of the map at any
               | time in constant time. You don't even need to simulate it
               | at all.
        
               | thatguysaguy wrote:
               | Welllll, there seems to at least be some mathematical
               | cheating in that this is representing a non-well-founded
               | set. (Declare each pixel to be the set of subpixels at
               | the next level down defining it, this forms an infinite
               | descending chain).
        
               | EdwardCoffin wrote:
               | A digression for anyone interested in Hashlife: I want to
               | recommend Gosper's original paper [1] over the various
               | other explanations of it. It is brief (6 pages), lucid,
               | and was the paper that finally made me understand how
               | hashlife works.
               | 
               | [1] https://www.lri.fr/~filliatr/m1/gol/gosper-84.pdf
        
         | nolist_policy wrote:
         | More intuitive if you zoom out:
         | https://www.youtube.com/watch?v=xP5-iIeKXE8
        
         | epiccoleman wrote:
         | There's a seriously incredible article on the guy's site where
         | he explains how it works! It's very much worth a read, really
         | cool stuff.
         | 
         | https://blog.oimo.io/2023/04/10/life-universe-en/
        
         | spacebacon wrote:
         | It feels like cheating due to the first generation grid already
         | being a complex pattern of spaceships, pulsars, breeders and
         | replicators I think.
        
       | mvcalder wrote:
       | For the experts in the house: would it be possible for this to
       | wrap around, so the highest and lowest level join? A torus of
       | GoLs? Can such a thing, assuming it exists, have a finite number
       | of layers? Just curious, this is amazing.
        
         | dbdudbdiddjc wrote:
         | What does that mean
        
           | rpastuszak wrote:
           | I guess what they mean is that the "zoom" would be cyclic,
           | e.g. at the same time the game zoomed at 1x would look like
           | the game zoomed at 101x, zoomed at 2x would look like 102x
           | etc...
           | 
           | Totally different thing, but this makes me think of looping
           | procedural animations, which are achieved by sampling noise
           | on a circle (or walls of a cylinder in a 3d noise space).
        
         | supriyo-biswas wrote:
         | At a very high level, this is simulating the Game of life at
         | the appropriate resolution level based on an algorithm whose
         | input parameters are the zoom level and your location in the
         | space, similar to a fractal pattern. So I'm not sure what you
         | mean by a "torus" of GoLs.
        
           | adrianmonk wrote:
           | Have you heard of the thought experiment where a 2D plane is
           | finitely sized instead of infinitely sized, but as you travel
           | within the 2D plane, if you get to one edge, you wrap around
           | to the opposite edge? Even though its size is finite, you can
           | pick a direction and go that way forever.
           | 
           | If you sit in 3D space and look at this finite 2D plane, then
           | it looks like (say) a rectangle. That's displeasing because
           | from inside the plane, it's continuous, but from the outside,
           | it looks discontinuous.
           | 
           | One way to get rid of that annoyance is to map the plane onto
           | a torus. Then it looks continuous from the outside. It's no
           | longer flat, which is un-plane-like, but you can't have
           | everything in life.
           | 
           | Anyway, the zoom level of game of life is an infinite number
           | line. But what if it repeats and can be represented as
           | something that wraps around? You could think of it as a line
           | segment that you wrap around into a circle (to join the two
           | ends). So the same concept as mapping the plane onto a torus,
           | except 1D instead of 2D.
        
         | 4ad wrote:
         | It can't have a finite number of layers because of an argument
         | very similar to the uncountability of reals.
        
           | adrianmonk wrote:
           | If there is a pattern that repeats, that pattern can have a
           | finite length.
        
             | 4ad wrote:
             | Such patterns are of measure zero due to the uncountability
             | of the reals.
        
               | lostmsu wrote:
               | So they still can exist. I don't think they meant that
               | any such configuration would run, just one.
        
               | 4ad wrote:
               | The empty board is a repeating pattern of length one.
        
               | svara wrote:
               | Yes but the question is whether there are repeating non
               | empty patterns. I don't think you've answered this? I
               | don't know but I think that's a fascinating question.
        
               | lostmsu wrote:
               | The question was related to the simulation of game of
               | life linked by the OP. E.g. Can a full simulation of game
               | of life simulate itself.
        
               | adrianmonk wrote:
               | I believe the comment above is talking about the game
               | running as a simulation within another instance of the
               | game. Each instance of the game has a state. Game G1 has
               | state S1, game G2 has state S2, etc. I think they're
               | asking if there's any S1 that can be chosen so that S2 =
               | S1.
               | 
               | You might need 2 or more layers, so whatever number of
               | layers you need (if this is possible, you'd have some
               | sequence infinite sequence (moving through layers) like
               | (S1, S1, S1, ...) or (S1, S2, S1, S2, ...) or (S1, S2,
               | S3, S1, S2, S3, ...).
               | 
               | The length of the repeating pattern (subsequence) is
               | going to be a positive integer, so I don't think real
               | numbers are relevant, if that's the question.
        
           | samatman wrote:
           | To dispose of this briefly, the cardinality of computable
           | functions is 0, and Life is a computable function. Although
           | the parent question is underspecified (some good guesses as
           | to what specifically is meant in sibling comments), no
           | variation on that question could increase the  number of the
           | result.
        
         | ordu wrote:
         | Well... if we wrap around without meddling with time, it will
         | be impossible. On the lowest level cells are switching much
         | more frequently than on the highest level.
         | 
         | But if we allow ourselves to bend time, then probably... It
         | would be like you zoom out and go back in time. My guess it is
         | possible, but I still cannot wrap my head around infinite
         | spatial dimensions of the field. We need infinity for that
         | because without it will hit the problem of different cell count
         | on the lowest level and the highest (which are represent the
         | same sequences of states of GoL). I see no possible problems to
         | buils such a "torus" but to be sure one needs to really prove
         | it.
        
       | grugagag wrote:
       | Im mindblown and deeply thinking about existence now. Will
       | probably end up with a headache if I continue so
        
       | indrex wrote:
       | This proves it won't take much to simulate reality.
        
         | p0w3n3d wrote:
         | Indeed. Life and universe and everything is 42
        
       | xyst wrote:
       | Watching some squares advance in this universe reminds me of the
       | corporate grind.
        
       | aidos wrote:
       | That is an absolutely beautiful bit of work.
        
       | dvh wrote:
       | ERROR> https://oimo.io/works/life/main.js(37): Uncaught Error:
       | assertion error
        
       | nbittich wrote:
       | unfortunately it doesn't load: Uncaught TypeError: c[b[k]] is
       | undefined add https://oimo.io/works/life/main.js:49 yg
       | https://oimo.io/works/life/main.js:37 kf
       | https://oimo.io/works/life/main.js:60 onload
       | https://oimo.io/works/life/main.js:223 Ug
       | https://oimo.io/works/life/main.js:223 kf
       | https://oimo.io/works/life/main.js:60 R
       | https://oimo.io/works/life/main.js:59 R
       | https://oimo.io/works/life/main.js:60 Cb
       | https://oimo.io/works/life/main.js:33 Vg
       | https://oimo.io/works/life/main.js:73 <anonymous>
       | https://oimo.io/works/life/main.js:242 <anonymous>
       | https://oimo.io/works/life/main.js:242
        
         | doug_durham wrote:
         | Works on Safari for me.
        
         | linkergames wrote:
         | I get the same error on Firefox 124.0. It works on Chrome 121
         | to 123.
        
         | y-c-o-m-b wrote:
         | I'm getting the same error in Firefox
        
       | state_less wrote:
       | This reminds me of nested dreams, where you wake up from a dream
       | in your bed, only to slowly realize you're still dreaming and
       | wake again in the same bed.
        
         | rolisz wrote:
         | Heh, I think my record is three level deeps (dream inside of a
         | dream inside of a dream). Inception ftw.
        
           | waltbosz wrote:
           | Sometimes I have them at seemingly infinite levels of depth.
           | Also the time dilation feels enormous. It feels like I've
           | been dreaming for days.
        
             | jessekv wrote:
             | Can you elaborate more about the time dilation?
             | 
             | I've had dreams about waking up in succession, but have not
             | experienced a time dilation.
             | 
             | Do you dream you are falling asleep, having an inner dream,
             | and waking up again to the outer dream, to discover less
             | time has passed than expected?
        
               | waltbosz wrote:
               | It just feels like the span of time of the dream is
               | longer than I have been sleeping. I could sleep for an
               | hour and dream for a day. But it's not really that I go
               | through a day long dream, it's just that it feels like a
               | day has passed.
               | 
               | My theory is that the memory of a dream is actually
               | formed instantaneously in the brain, not over whatever
               | span of time you feel like has passed in the dream.
               | 
               | Have you ever dreamed that you've spent an hour trying to
               | turn off your alarm clock, but in real life you wake up
               | and it's 1-minute past the alarm time? How can you have
               | had this long complicated dream involving an alarm clock
               | that won't turn off, but you've only really slept
               | 1-minute through the alarm? My answer is, as I said, the
               | dreams happen instantly but your brain just thinks time
               | is passing in them because it's a false memory.
        
               | jessekv wrote:
               | That's a good point. I've definitely had that alarm
               | experience before, but not in the context of dreams
               | within dreams.
               | 
               | I think the idea of each inner dream happening faster
               | than the outer one is probably just an Inception thing.
               | 
               | Fast dreams might not need to be an "instant" false
               | memory. It seams possible that a dream could actually
               | happen much, much faster than your "normal" sense of
               | time, it's entirely synthetic so there is no sensory
               | bottleneck. But it would take more energy to experience
               | it this way.
               | 
               | I'm basing this theory off of the time I had several
               | long, detailed dreams in the 9 minutes between pressing
               | snooze and the second alarm. I woke up bewildered and
               | worn out, as though I had been up all day. Worst "snooze"
               | ever.
        
             | maxcoder4 wrote:
             | This honestly sounds concerning. I would get mad if I
             | regularly experienced seemingly days long sleep
             | interspersed with fake awakenings.
        
               | waltbosz wrote:
               | They're not regular. Just whenever I do experience a
               | dream-in-a-dream loop, it's never just one loop and it
               | feels like it's taking forever to actually wake up.
               | During the dream, I do experience the emotion of
               | impatience and annoyance. Sometimes there is also a
               | feeling of urgency and fear because the in dream I am
               | trying to escape some danger and I know that I can escape
               | it by waking up ... but when I do wake up, I'm still in a
               | dream.
               | 
               | I've on a few very rare occasions been awake/conscious in
               | real life, but also still dreaming. That's really weird
               | when that happens. To explain: once I was awoken by my
               | wife getting ready for work, I said some words to her,
               | while in the back of my mind the dream was still
               | happening. I then went back to sleep and returned to the
               | same dream in progress. It wasn't like I was talking to
               | her in my sleep and didn't remember it. I was fully awake
               | and making new memories, while still dreaming.
               | 
               | The best analogy that I can make that you might be able
               | to understand is. I have multiple streams of
               | consciousness. One level I use to think about what I'm
               | going to say when speaking to someone, but at the same
               | time I could be counting in my other stream of
               | consciousness. I assume that's how most people's brains
               | work. I think when the dreaming-awake thing happened, the
               | dream was in one stream and the awareness was in the
               | other.
        
               | fydorm wrote:
               | I've had this as well. When I'm really tired, I can wake
               | up then fall asleep and resume my dream.
        
               | tacocataco wrote:
               | Maybe you are lucid dreaming but you don't know how to
               | control it yet.
        
               | waltbosz wrote:
               | I've done lucid dreaming a couple of times. My trick to
               | test if I'm in a dream is to stick my dream finger
               | through my hand, or phase through a wall.
               | 
               | It's a strange feeling to be aware that you're in a
               | dream. I've never really managed to get complete control
               | of the dream.
        
         | jessekv wrote:
         | The worst is when this happens when you need to use the toilet.
         | After walking to the toilet for the nth time, how do you know
         | for sure you won't wet the bed?
        
       | CHMODX wrote:
       | I love this. Does this use a technique similar to what Noita devs
       | did, and I guess most game devs, to only process visible areas?
        
       | vbezhenar wrote:
       | Incredible. Looks like DNA.
       | 
       | For some reason I want the ability to put a pixel and watch how
       | it destroys the world :)
        
         | mickdarling wrote:
         | Adding one pixel at any level is the equivalent of adding me or
         | infinite numbers of pixels, smaller and smaller levels.
         | However, I think if you add in the pixel in a empty space at
         | its level, it would simply disappear. I don't think it would
         | cause any havoc. But, this is not an actual game of life. This
         | is a PNG of many steps in a game of life. The computation power
         | for actually making it a real game of life would be pretty big.
        
       | monitron wrote:
       | I think the coolest thing about this is the way time works. One
       | step at each level is computed using a large number of steps at
       | the level below. So as you zoom out you are sinking into an
       | exponential vortex where each step takes days, years, millennia
       | to change.
       | 
       | But ingeniously, the simulator smoothly scales its speed as you
       | zoom, totally erasing the fact of time. I wish there was an
       | indicator somewhere of how much game time was going by per real-
       | life second.
       | 
       | EDIT: ...but in order to do that you'd have to declare one of the
       | levels to be the "bottom" level, the one that runs in real time,
       | and that would ruin the fractalness of it all...
        
         | px43 wrote:
         | For some reason what really sticks out to me is how when you
         | zoom out, you always come out of a different part of the
         | circuit, so it doesn't feel like the normal repetitive fractal,
         | you're seeing all the parts of the machine from different
         | chronological angles or something.
        
           | Mogzol wrote:
           | Interestingly, the author's blog post [1] mentions that this
           | is due to technical limitations and not specifically done by
           | choice, although I do like the effect.
           | 
           | > When we zoom in, we discard the information of the largest
           | meta-metapixel, so it is not always possible to reconstruct
           | the same scene when we zoom out again.
           | 
           | > Since zooming in and out can be continued indefinitely, we
           | also realize that we need infinite information to accurately
           | represent "our current position".
           | 
           | [1] https://blog.oimo.io/2023/04/10/life-universe-en/
        
           | DonHopkins wrote:
           | Todepond's "Screens in Screens" explores infinite
           | zoomability!
           | 
           | https://www.youtube.com/watch?v=Q4OIcwt8vcE
           | 
           | "Another thing I know about screens is, you can go into them
           | as far as you want forever. And you can come out of them too,
           | but you might not end up in the same place that you started.
           | You might get lost. Or you might not."
        
         | dontreact wrote:
         | Well you could just say the level you start at is real time and
         | the second hand moves slower for lower levels and faster for
         | higher levels?
        
           | hateful wrote:
           | Exactly - time is relative to our reference frame, so that
           | would be the best arbitrary choice.
        
             | monitron wrote:
             | This is fun and has a great symmetry but my brain breaks at
             | the idea of the infinitely fast and large computer that
             | would be required to run it all :)
        
               | mickdarling wrote:
               | Imagination is fun. I'm pretty sure I can make your brain
               | break a little bit more. Imagine they're all looped and
               | there is no bottom level fastest super infinite computer.
        
               | andoando wrote:
               | Its the universe! https://m.youtube.com/watch?v=ycvlJ9XMd
               | 94&pp=ygUWc2ltcHNvbnM...
        
               | ForHackernews wrote:
               | Reminds me of https://www.youtube.com/watch?v=0fKBhvDjuy0
        
               | mistermann wrote:
               | Or this:
               | 
               | https://youtu.be/4TI1onWI_IM?si=uBt9Gob0gqnFk8lP
        
             | layer8 wrote:
             | The levels are stationary with respect to each other
             | though, so in the same reference frame.
        
         | sfn42 wrote:
         | I'm fairly sure it's all an illusion.
        
           | floatrock wrote:
           | My read on the author's explanation story is he _did_
           | actually solve the  "consistency with time" and "consistency
           | in position" problems that would make it a "rounds up to
           | real-looking" at some zoom seam.
           | 
           | It's not cheating, but the trick is it's pre-computed.
           | 
           | Basically the structural patterns repeat, and you can pre-
           | compute the patterns (which are also the sub-patterns), then
           | basically tile the configurations and their transitions
           | "across time". A naiive approach takes a few TB to store it
           | all, but there's some clever optimizations that can bring it
           | down. Finally once a "solution" through the tiling space was
           | found, the author encoded it into a 4 mb png and built a
           | display with some clever shaders.
        
             | samstave wrote:
             | Pardon my poor vocabulary to describe the following:
             | 
             | But if the patterns are precomputed at whatever timescales,
             | the patterns repeat in a predicable interval, based on the
             | scale of time..
             | 
             | So, I wonder what each layer of pattern looks at from a
             | perspective of a prime or true prime number scale digit...
             | 
             | Like if real-time baseline is 1 - and if you look at the
             | pattern in a still frame at position scale 1. What is the
             | pattern look like at time scale of the primes and true
             | primes?
             | 
             | Whereas the primes and true primes are known discretes, so
             | one could think of them as discrete dimensions of timescale
             | based on the pattern represented at timescale position 1
             | (real-time)
             | 
             | And what if timescale at position 1 is some reflection of
             | the pattern at the primes and true prime timescales...
             | (assuming a dimension simply means the rate at which times
             | flow at that energy level)
             | 
             | Does that make sense?
        
             | sfn42 wrote:
             | I'm not saying it isn't technically impressive and super
             | cool - but he clearly can't actually be computing
             | infinitely recursive levels of GoL, so in that sense it's
             | an illusion.
        
               | ant6n wrote:
               | But it can be displayed, partially.
        
         | floatrock wrote:
         | The hows-it-done article describes the meta-pixel pattern
         | concept then gives you the "clock-ratio" of the periodicity:
         | 
         | > In addition, the pattern has a period of 35328, so advancing
         | 35328 generations will cause the generation at the meta level
         | to advance by 1.
         | 
         | I would even say this time dilation is _necessary_ because the
         | pattern 's self-similarity is across time, and if the two
         | levels operate at different clocks, you _need_ to slow down the
         | next level as it comes up to the self-similar animated view of
         | the prior level.
         | 
         | In other words, the structure at level n requires 35328
         | iterations of the self-similar structure at level n+1, so if
         | you're bringing n+1 up to the self-similar view of n, you need
         | to slow down n+1 as it's coming up to also hit the time-based
         | self-similarity.
         | 
         | I wonder then if there's something like a time-invariant
         | constant, maybe along the lines of the "computational
         | complexity" of any view remains constant across all levels of
         | zoom.
        
         | jhrmnn wrote:
         | Note that this is also how our own world works. Typical time
         | scales of processes get faster as the length scales shorten.
         | Somehow it feels inevitable for a dynamic multiscale structure.
        
           | leetcrew wrote:
           | armchair physicist moment: isn't this a straightforward
           | outcome of c as a global "speed limit"? effects can't
           | propagate faster than c, so I would expect that interaction
           | "latency" decreases linearly with scale.
        
           | layer8 wrote:
           | In the real world, there is a limit set by the speed of light
           | and the Planck scale. And more generally, physics is very
           | much _not_ scale-invariant.
        
         | edwinjm wrote:
         | That's because gravity slows down time.
         | 
         | So the higher you go, the less you're impacted by gravity, the
         | faster times goes.
         | 
         | See https://en.wikipedia.org/wiki/Gravitational_time_dilation
        
           | saagarjha wrote:
           | I suspect this simulation does not try to incorporate that ;)
        
             | groggo wrote:
             | Haha but it feels weirdly metaphysical, right? Like maybe
             | there is some sort of deeper analogy there.
        
               | moffkalast wrote:
               | It's universes simulating universes all the way down?
        
               | justinjlynn wrote:
               | Scale-free infinity.
        
         | layer8 wrote:
         | Since the grid is infinite, it should be possible for one level
         | to to be completely identical in its history to the next level.
         | Thus you could identify all levels with each other to really be
         | the same level. Then both space and time are circular in their
         | scale. (The now-single level could nevertheless still be non-
         | repeating both in space and time!)
        
           | worewood wrote:
           | The most recent video from Space Time in YouTube talks about
           | something like this related to the holographic principle.
        
         | Razengan wrote:
         | And of course, who is to say that Reality/the Omniverse isn't
         | the same way? :)
        
         | mglz wrote:
         | Relevant xkcd: https://xkcd.com/505/
        
       | gregorymichael wrote:
       | My subconscious reaction when first zooming in was: "f---- you."
       | They've taken something I've been familiar with for 20+ years and
       | completely blown my mind. One of the coolest things I've seen on
       | here in a long time.
        
       | archibaldJ wrote:
       | i think the freedom of zooming in and out is what deeper level of
       | meditation feels like
       | 
       | computationally, what appears as the experience of
       | "consciousness" is thus Anatta (not-self)
       | 
       | https://en.m.wikipedia.org/wiki/Anatta
        
       | gdubs wrote:
       | This is beautifully executed.
       | 
       | Game of Life must be the first simulation I ever took on as a
       | programmer -- and have revisited it over the years.
       | 
       | To this day it continues to come up in my mind when people muse
       | about things like consciousness. Is there a magic dust to us? Or
       | are we the result of simple rules playing out in a grand stage?
        
         | anvandare wrote:
         | As the laws of physics do not seem to stop at the borders of a
         | skull, there is no sovereignty of the Self. But no one minds a
         | thought thinking itself its own thinker, as there is no one at
         | all. Just a thought.
        
           | cscurmudgeon wrote:
           | https://en.wikipedia.org/wiki/Hard_problem_of_consciousness
           | 
           | > As the laws of physics do not seem to stop at the borders
           | of a skull
           | 
           | There doesn't need to be a magic dust for consciousness, it
           | could still be a primitive compatible with existing physics.
           | See what Roger Penrose worked on.
        
             | Nevermark wrote:
             | Or not a primitive but just emergent phenomena.
             | 
             | I.e. an intelligent computing engine which learns to model
             | both its environment and itself, with some degree of access
             | and control of its internal processes including when it
             | considers itself.
             | 
             | At the point of clear, continuous practical self-awareness,
             | how could it not be "conscious"? It will experience it's
             | self's awareness of it's self-awareness.
        
             | mistermann wrote:
             | Cognitive services are disabled (or have bugs injected)
             | when consciousness is pointed at itself.
        
         | voiceblue wrote:
         | You might enjoy watching the emergent behavior in the execution
         | of this 256 byte program - a mind is born [0].
         | 
         | [0] https://www.youtube.com/watch?v=sWblpsLZ-O8
        
         | shkkmo wrote:
         | Or are the simple rules themselves the "magic dust". These
         | turing complete structures show up everywhere and are in many
         | ways equivalent.
         | 
         | Perhaps this underlying structure is the foundation of our
         | metaphysics and our reality is just one node of it's
         | permutative potentiality. The simple rules of GoL are just an
         | emergent reflection of the fundemental nature of meta-reality.
         | These types of relfections within our neural and semantic
         | structures may be the necessary "magic dust" for consciousness
         | to emerge.
        
       | MrYellowP wrote:
       | This gave me a feeling of infinite computing power.
        
       | gbolcer wrote:
       | Okay, this is amazingly cool.
        
       | whartung wrote:
       | So, do you think this was a twinkle in the back of Conways mind
       | when he was scheming and coming up with the game?
        
         | samatman wrote:
         | Probably not! I draw your attention to a paragraph from
         | Gardner's column which introduced the Game of Life:
         | 
         | > _Conway conjectures that no pattern can grow without limit.
         | Put another way, any configuration with a finite number of
         | counters cannot grow beyond a finite upper limit to the number
         | of counters on the field. This is probably the deepest and most
         | difficult question posed by the game. Conway has offered a
         | prize of $50 to the first person who can prove or disprove the
         | conjecture before the end of the year. One way to disprove it
         | would be to discover patterns that keep adding counters to the
         | field: a "gun" (a configuration that repeatedly shoots out
         | moving objects such as the "glider," to be explained below) or
         | a "puffer train" (a configuration that moves but leaves behind
         | a trail of "smoke"). I shall forward all proofs to Conway, who
         | will act as the final arbiter of the contest._
         | 
         | https://www.ibiblio.org/lifepatterns/october1970.html
         | 
         | A related question is whether, after Bill Gosper won that
         | conjecture a month later with the Gosper Glider Gun, did Conway
         | _then_ suspect that Life could be simulated in Life. I haven 't
         | been able to dig up a definitive answer but I suspect it's
         | "yes".
        
       | asow92 wrote:
       | Reminds me of the animations in The Animatrix
        
       | PhilipRoman wrote:
       | Interesting to see it's written in Haxe, a language I've never
       | heard before. I've been looking for a "hacker's language" which
       | could fit in practically any niche and this might just be it.
       | With optional static typing, compilation to multiple targets
       | (notably C++) I really don't understand why it's not more
       | popular. Seems like a really pragmatic language whose designers
       | understood the needs of developers.
        
         | zengid wrote:
         | I believe Haxe was made to replace flash. Not sure why it isn't
         | more popular, but it has a lot of folks from the game community
         | that use it.
        
           | OmarShehata wrote:
           | I was a big believer in Haxe, it seemed perfect. The main
           | issue I and many people had at its inception was that the
           | ecosystem was very fragmented. The promise was "write once,
           | run everywhere" (which is what we had with Flash), but each
           | platform you wanted to actually compile on was a whole
           | process, often undocumented, with lots of caveats, and having
           | to hunt for third party community wrappers to do the native
           | integrations you want etc.
           | 
           | This was ~10 years ago, I'm sure the current state of the
           | ecosystem is very different (no idea), but this is the reason
           | why I was never able to adopt it, and I heard the same thing
           | from dozens of Flash creators at the time.
        
           | Dwedit wrote:
           | Dead Cells was made in Haxe.
        
         | tombert wrote:
         | Haxe is pretty neat, and worth playing with if you haven't. I
         | don't do games so I haven't done much, but it kind of feels
         | like "What if ActionScript 3 was allowed to break out of the
         | Flash world, and keep evolving?".
         | 
         | At some point I should really do more with it and make a game
         | or something.
        
         | LeftHandPath wrote:
         | It looks neat. Reminds me of a lot of ideas I had of making a
         | way to tightly couple classes/logic between PHP (server side)
         | and JS (client side) when making websites and web apps.
         | 
         | It came up a lot when making HTML-based forms. I'd define them
         | all in PHP, but the experience is best without a page load, so
         | typically I define some typescript object to send the form via
         | Ajax. I got tired of having to define all the field names in
         | both places (awful for maintenance), so instead typescript uses
         | AJAX to ask the server for the list of inputs it needs to grab
         | and send.
         | 
         | It sounds like Haxe could be a much nicer way to do stuff like
         | that: https://haxe.org/use-cases/web/
        
           | zilti wrote:
           | Sounds like a job for HTMX
        
           | shkkmo wrote:
           | > I got tired of having to define all the field names in both
           | places (awful for maintenance)
           | 
           | Haxe might be overkill for that. Usually (unless youre doing
           | a SPA) you use PHP or a templating language to dynamicly
           | render the form server side based on either data or metadata.
           | 
           | Haxe can indeed be useful for more complicated versions of
           | that situation, where you need a complicated state machine or
           | algorithm in more than one language.
        
         | earslap wrote:
         | Haxe is pretty established, but not well known. Perpetually the
         | underdog. And totally awesome. It also has macros where you can
         | transform the AST! You can do some amazing compile time stuff
         | that very small number of languages support, and the features
         | are pretty mature. If you want a hacker's language but don't
         | want a lisp give Haxe a shot.
        
         | zilti wrote:
         | Same reason why most really neat things aren't. The people who
         | are good at crafting neat things are bad at creating hype for
         | it. Meanwhile, the bullshit bingo bros come up with convoluted,
         | marketable stuff and manage to generate hype.
        
         | Keyframe wrote:
         | It was often talked about here on HN because (I think) player
         | or part of system of justin.tv (twitch today) was written in
         | it, and it being a part of YC..
        
       | waltbosz wrote:
       | I wonder how this app is perceived by people who under stand the
       | rules of Game of Life, verses people who don't understand the
       | rules.
       | 
       | I showed it to my kids and they were amazed and mesmerized, but I
       | know they can't grasp the complicated cellular automata that is
       | happening.
        
         | posix86 wrote:
         | It's not complicated though
        
           | catlifeonmars wrote:
           | That's the beauty of cellular automata. Simple interactions
           | can give rise to complex effects.
        
           | waltbosz wrote:
           | The rules of the game are simple enough to explain, when I
           | said complicated I meant the interactions of the system as a
           | whole.
           | 
           | I mean, I don't really understand how a glider gun works.
        
             | samatman wrote:
             | Glider guns have a period of 30, so you could work them out
             | on one tablet of graph paper if you wanted. Or just let a
             | computer do it frame by frame and pay attention.
             | 
             | This isn't a rebuke at all btw, it's a suggestion, this is
             | a fun and edifying way to spend some time. Don't know if
             | your kids are old enough for it yet, or have the interest
             | to play along, but you might enjoy it.
        
       | andoando wrote:
       | Few thoughts:
       | 
       | 1. What happens if we artificially change the value for a cell? I
       | imagine it would ensue chaos and the changes would eventually
       | propagate to every level. Would love to see this.
       | 
       | 2. Would it be possible to have each cell be a different
       | stimulation while still acting as Conways Game of Life in a
       | greater zoom. I imagine yes, so long as the simulation respects
       | its boundaries and turns on and off at the correct times. I
       | wonder what limits there are to this.
        
         | jamiek88 wrote:
         | > What happens if we artificially change the value for a cell?
         | I imagine it would ensure chaos and the changes would
         | eventually propagate to every level. Would love to see this.
         | 
         | Is this analogous to cancer? Would be interesting to see it
         | develop and even if any 'correction' or 'immune system' type
         | effects happens.
        
           | andoando wrote:
           | I suppose in a sense it would. Would be really interesting to
           | explore that with different input values and see what
           | happens. I imagine some changes would result in the whole
           | thing eventually collapsing and others would maybe get self
           | corrected. My guess is a any single change would collapse it
           | either entirely or at least break the simulation of the game
           | of life, while two changes might self correct each other.
           | 
           | I also wonder what happens if we make changes not just to the
           | initial configuration but at different iterations. After
           | iteration 2, change x. It'd be like interweaving functions.
           | 
           | Hmm really getting curious about trying this out myself.
        
           | Nevermark wrote:
           | I don't think a change with effects rippling out would be a
           | cancer.
           | 
           | Cancer self-replicates whereas this would simply be either
           | fast catastrophic failure for all levels above, or a change
           | whose effect got suppressed (either died out, or maintained
           | but doesn't change next level behavior) and only had limited
           | temporary impact.
        
             | andoando wrote:
             | I think he meant it in the sense that its a mutation that
             | propagates indefinitely. But yeah its a loose analogy.
        
           | catlifeonmars wrote:
           | Why would you expect corrective effects to occur?
        
         | OscarCunningham wrote:
         | The level you change the cell in will be destroyed by a wave of
         | chaos radiating outward from the original damage, leaving
         | boring 'ash' patterns in its wake.
         | 
         | The levels below that one will be unaffected, faithfully
         | simulating the chaos happening above them using their unbroken
         | technology.
         | 
         | The levels above that one will no longer be simulating the Game
         | of Life. The broken part of the levels below will appear as a
         | faded spot, neither white nor black, growing forever but
         | exponentially slower each level you go up.
        
           | jiggawatts wrote:
           | Reminds me of false vacuum decay.
        
           | marshmellman wrote:
           | But isn't a "cell" composed of infinitely many cells on
           | infinitely many levels? So changing a "cell" should change
           | all cells on all lower levels, not just the visible level.
        
             | tarl0s wrote:
             | Sure, lower levels will change, but instead of the chaos
             | above they'll just continue to simulate upper levels in
             | perfect order (even if different).
             | 
             | Edit: putting some effort to be more precise (though I may
             | be on the wrong track): since the period of the pattern is
             | 35328, it depends at which tick we introduce the change.
             | Since we're changing a cell at a certain level N it makes
             | sense to consider tick 1 out of 35328 for level N-1
             | (zooming in).
             | 
             | If we introduce a change at any other tick (out of the
             | 35328), what we are really doing is a big change in level
             | N-1 rather than a single cell change in level N.
        
               | andoando wrote:
               | I dont think thats correct. Any change on a lower level
               | will effect the greater cell.
               | 
               | Each cells behavior is the composition of all its lower
               | cells after all.
               | 
               | Im sure there are various compositions that lead to the
               | same outcome, so it should be possible for each cell to
               | be something else, but most changes would change the
               | greater cell. For an easy example image a cell turned
               | from on to off at 2x slower than normal.
        
       | jamiek88 wrote:
       | Folks, this is one where you really have to try it not just read
       | the comments (as I usually just do).
       | 
       | I nearly clicked away but went in and was fricken _mesmerized_ by
       | this.
       | 
       | It's incredible.
        
         | hesdeadjim wrote:
         | Absolutely incredible.
        
         | canjobear wrote:
         | Indeed. Just looking at and zooming around is incredibly
         | thought-provoking.
        
         | J_cst wrote:
         | I mainly read comments too... :)
        
         | Sn0wCoder wrote:
         | Agree with you about needing to click the site and about
         | reading comments. I always read the comments first to see if
         | the link is worth the click (paywall, waste of time, huge
         | banners, scam site, etc.) Big shout out to those folks who are
         | reading the articles and leaving comments for the rest of us. I
         | am guilty of not commenting much on this platform mostly
         | because even with all my experience rarely will my comment add
         | to the discussion.
         | 
         | I have made the game of life at least a dozen times in every
         | new language I learn and am already thinking about how this is
         | done. Even having a few example patterns the user can start
         | with is sometimes a hassle depending on the implementation.
         | This site has almost still life's, oscillators and spaceships
         | combined into an infinite number of layers (not sure it has all
         | did not verify). The pattern does appear to be repeated but
         | just getting the base layers is very impressive.
        
         | TheSkyHasEyes wrote:
         | Site hugged to death. :/
         | 
         | Will try in a few days.
        
           | hacky_engineer wrote:
           | If you're in firefox, try disabling Enhanced Tracking
           | Protection.
        
       | drewfis wrote:
       | Makes me wonder if there's even smaller building blocks of the
       | universe. Smaller than Photons, Gluons, Neutrinos, Electrons,
       | Quarks and we just can't 'zoom in' enough to know about them.
        
         | jordanpg wrote:
         | [Stephen Wolfram sits up.]
        
         | catlifeonmars wrote:
         | Does it matter, if they have no discernible difference or
         | effect than our current "simpler" models?
        
           | OscarCunningham wrote:
           | If our 'fundamental' physics is actually emergent from a
           | lower layer then we might expect that our laws are actually
           | leaky abstractions. Very occasionally things at the lower
           | level will happen in an unusual way that causes the laws of
           | physics to be broken at our level.
        
             | andoando wrote:
             | That is in fact what quantum physics showed.
        
       | catlifeonmars wrote:
       | Does this count as a quine?
        
       | canjobear wrote:
       | Is this the simplest construction of a self-simulating game of
       | life?
        
         | OscarCunningham wrote:
         | No. The centre of each meta-cell is full or empty to display
         | the state of the cell. You could remove all that and it would
         | still be simulating the Game of Life, it would just be hard to
         | tell what was happening without zooming in.
        
       | mattxxx wrote:
       | very beautiful application of games of life as computational
       | tools, simulations of simulations of simulations.
       | 
       | you're hired
        
       | brrrrrm wrote:
       | Stuff like this always makes me think: what super structure do
       | our brains form? Always end up concluding it's the economy
        
       | fnordpiglet wrote:
       | This simulates my layman's understanding of the holographic
       | principle.
        
       | for_i_in_range wrote:
       | Whelp, there goes my afternoon.
        
       | ordu wrote:
       | Is it possible to build a macro simulation of the world of
       | quantum mechanics? And then macro-macro...
       | 
       | BTW I think it is not possible but what is the difference between
       | GoL and QM that makes QM so narrowly bound to a nanoscale.
        
         | ziofill wrote:
         | Physicist here: yes, it is theoretically possible, but
         | practically impossible because the complexity of a classical
         | simulation of a quantum system scales exponentially in the
         | physical size of the system.
         | 
         | It would be practically possible if the problem has useful
         | symmetries, like only allowing 2-dimensional Hilbert spaces
         | (qubits), and a set of possible transformations (e.g.
         | Clifford+T gates) as we do in quantum computing. In fact one of
         | the things we actually do that resembles what you are
         | describing is quantum error correction, where codes are
         | concatenated until the rate of logical errors becomes low
         | enough.
        
       | davelondon wrote:
       | Oh my lord this is amazing.
        
       | scotty79 wrote:
       | For me this is an illustration that the simulation hypothesis is
       | silly. Lower level of simulation doesn't need to have any api-s
       | or system calls. There is no way to hack anything about
       | underlying simulation nor learn anything about it or even about
       | it's existance.
        
       | darreninthenet wrote:
       | Think my brain just exploded
        
       | anoncow wrote:
       | That entire website is something.
        
       | cochleari_major wrote:
       | I find the following asymmetry interesting: if you pick a random
       | spot and start zooming out, you will pass through interiors of
       | both dead and living cells in some ratio. But if you start
       | zooming in, pretty much all of the cells you pass through will be
       | dead.
        
         | SamBam wrote:
         | Except that even in dead space when you zoom in you find the
         | borders of all cells, and each of those borders is just as
         | alive as any other live cell. I kept feel like, if I zoomed in
         | to either an always-on cell or an always-off cell I would enter
         | into something noticeably more static, but actually each one
         | was just as alive as any of the universe around it.
        
         | andoando wrote:
         | Yeah I found the same thing, does anyone have an explanation
         | for that?
        
         | tschumacher wrote:
         | Yes, this is inconsistent. When you zoom in 10 levels and then
         | zoom out 10 levels again, pretty much all cells you see will be
         | dead. But if you continue to zoom out further than 10 levels,
         | you will see some mix of live and dead cells again.
         | 
         | Zooming in is easily defined: when you zoom into an on-state
         | OTCA metapixel, you can check which pixels that make up the
         | metapixel are on and which are off [1]. Same deal for zooming
         | into an off-state OTCA metapixel. The reason you are seeing
         | mostly dead pixels is that most pixels inside an OTCA metapixel
         | are off, so the chance of hitting a pixel that is on is slim.
         | 
         | Zooming out is more tricky: when zooming out of an on-state
         | pixel, that pixel could be at many possible positions inside an
         | on-state or off-state OTCA metapixel. In their blog post the
         | author says that they randomly select from the possible options
         | in a way that adds "diversity" [2]. I think this could be
         | improved to align with the statistics of zooming in.
         | 
         | [1]: https://conwaylife.com/wiki/OTCA_metapixel [2]:
         | https://blog.oimo.io/2023/04/10/life-universe-en/#fnref5
        
       | Snoupy wrote:
       | Out of all the ways to replicate a game of life inside a game of
       | life, there has to exist a "most efficient" one for a given size
       | and speed. Something maybe akin to Carnot efficiency. I wonder if
       | aspects of the maximum ratio of scale for space and speed apply
       | to all "simulation inside simulation". And does it say something
       | about our reality? Maybe Planck length is the smallest unit of
       | length and lightspeed is the maximum speed irl and that tells us
       | about what we can simulate and could be simulated from lol
        
       | blendergeek wrote:
       | Flick the scroll wheel a few times and it will zoom out
       | continuously. Amazing!
       | 
       | I want this (continuously zooming out) as a screensaver 20+ years
       | ago (or today, I can probably figure out how to enable
       | screensavers on a modern Linux system). It would be amazing.
        
       | reactordev wrote:
       | I moved the time multiplier slider to 0.2x and scrolled quickly
       | out. When I did I got stuck in this slow outward zoom that
       | allowed time to tick and it presented the most beautiful
       | infinitum simulation of life I've ever seen. My gosh this is
       | cool. It just goes on and on and on forever!!!
        
       | andrewfromx wrote:
       | the designer version:
       | https://www.tiktok.com/@alirezashahbazi.art/video/7122391438...
        
       | chrsw wrote:
       | Fascinating
        
       | GalaxyNova wrote:
       | Wow! This is one of the coolest things I've seen in a while.
        
       | cdchn wrote:
       | I mean this in the best way possible, this is the best mind-trip
       | I've seen in weeks.
        
         | cryptoegorophy wrote:
         | There is a video by veritasium that concludes with this
         | animation. It gives you goosebumps.
        
       | wigster wrote:
       | coincidentally bumped into this time axis GoL animation today:
       | https://www.instagram.com/reel/C2hoRnFsmQW
        
       | imranq wrote:
       | Dang this is super cool - here is the github link for anyone to
       | see how it works: https://github.com/saharan/works/tree/main/life
        
         | whitehexagon wrote:
         | A few other nice simulations on that repo, but this is by far
         | the best, and most amazing Life idea I have seen for a long
         | while.
        
       | flockonus wrote:
       | I was trying to figure out how they coded the game in the game,
       | and it seems all code is "running" from the grid's lines..
       | 
       | Let alone they coded it, how do you go about debugging and unit
       | testing such code?
        
       | dohello1 wrote:
       | thats really interesting, so cool how people seem to always add
       | interesting features to the game of life
        
       | jimmySixDOF wrote:
       | There is a cool 3D visualization of the game where each previous
       | timeframe is layered sequentially below like roots growing and
       | animated from an isometric perspective. It looks super cool ---
       | nothing fractal like this, but definitely a shared art meets
       | science vibe.
       | 
       | AlecsForum : https://www.instagram.com/reel/C2hoRnFsmQW/
        
       | jzer0cool wrote:
       | Very beautiful. Could someone share a simple intuition how the
       | infinite zoom works for computation? I'd imagine it is computing
       | for only those pixels rendered on the screen, but cannot fully
       | wrap what is happening (especially the smoothness here of the
       | zooming in and out).
        
       | paulmd wrote:
       | Please implement the ability to link to a particular viewport
       | (insensitive to exact viewing hardware)
        
       | Chrupiter wrote:
       | Just a heads-up, I think it needs WebGL. By default I turn it off
       | on Firefox because I have a weird bug where sometimes Google Maps
       | turns black. On Vivaldi it ran fine.
        
       | grishka wrote:
       | Impressively cool!
       | 
       | Would also make a nice screensaver.
        
       | ofirrabanian wrote:
       | This is 100% one of the coolest things I've seen for a while..
       | It's amazing to see the structures that happens as you zoom out
       | over and over again.
        
       | shzhdbi09gv8ioi wrote:
       | > Uncaught TypeError: c[b[k]] is undefined
       | 
       | Firefox
        
       | brap wrote:
       | I sometimes wonder if our own universe is kinda like that. We
       | keep looking for the most basic particles, but maybe there are
       | none. Maybe it's all just infinitely zoomable and we're only
       | aware of our own level. Stuff is made of stuff which is made of
       | other stuff, infinitely. And maybe there's life in different
       | levels. Like, inside the electron. Or maybe we're all living
       | inside of much larger life forms.
        
         | mikestaub wrote:
         | Relevant video: https://youtu.be/DoCYY9sa2kU?t=441
        
       | banku_brougham wrote:
       | Is it necessary for the grid lines to be composed of the little
       | moving things? At the next level up only the filled-in pixels are
       | visible.
        
         | banku_brougham wrote:
         | Found the answer. The OTCA metapixel is the invention from 2006
         | that allows Life pixels to be represented by nested Life
         | structures.
         | 
         | So the answer is yes the whole structure depends on those
         | border regions (which overlap neighbiring metapixel by one
         | pixel.
        
       | redder23 wrote:
       | With Brave Shields turned on, this never loads ...
       | 
       | "https://www.googletagmanager.com/gtag/js?id=G-K6BVDSF3MT" is
       | blocked and that causes the site to fail? If so, this is bad
       | design.
        
       ___________________________________________________________________
       (page generated 2024-03-24 23:01 UTC)