Alex Francavilla - Week 11 - Are...We Turing Complete?

Turing completeness is a profoundly interesting computer science concept, defining a computational model, programming language, or any system that manipulates data as “Turing complete” if it can simulate any other computing process. In essence, a program able to run other programs within itself can probably be described as Turing complete. Every single coding language today is Turing complete, but that’s pretty obvious, given that they run every single computer system.

One popular example of a simple Turing complete machine is Conway’s Game of Life, which consists of a grid of squares that “live” or “die” based on how many neighboring squares are alive. Given a specific starting position and enough space, Conway’s Game of Life can simulate itself, which (with better PC specs) can simulate itself again in a process of theoretically infinite recursion. One can draw a parallel between the implications of Turing completeness and the hotly debated possibility of our current consciousness existing in infinitely recursed simulated realities. 

It's slow and messy, but its Turing complete

That’s not what I’m here to talk about. I’m here to talk about Geometry Dash.

Geometry Dash is a rhythm platform video game where the user controls a side-scrolling character, often the symbolic “cube,” to jump over triangular spikes and square blocks to reach the end of a level. The appeal of Geometry Dash, particularly in its early 2010 mobile gaming days, lies within its simple controls, consisting of pressing the screen and—if you’re feeling particularly feisty—letting go of the screen. 

You probably think I’m going to follow up that with something along the lines of “it might sound boring but it's really fun!” And it is. I have 514 hours on the game. Just on the computer version. Here’s proof.

Don't make fun of me... :c

The reason the game is so fun isn’t necessarily because I like bashing my character’s face against spikes for millions upon millions of attempts (although some players certainly do), but because of the fabled Level Editor. Here, players can create their very own levels in addition to the main 22. If you’ve ever observed any video game community getting their hands on the base building block of the game, you’ll understand why I began this blog talking about Turing completeness.

Although creating artistic masterpieces in the level editor is an extraordinary part of the community, creators like Spu7nix push the level editor to its full potential. Using objects that act like rudimentary block code, he was able to develop a programming language. Full stop. With this programming language, he and other members of the community were able to create 3D animations, 3D games, and a code editor for an entirely different coding language called “Brainf*ck” (which, in itself, is technically Turing complete but is such a nightmare to use that it’s relegated to the glamorous label of “Turing tarpit”).

I may never fully understand the science behind Spu7nix’s code nor the full implications of it, but it’s quite funny to see video gamers and computer scientists trying their absolute hardest to find increasingly esoteric ways to create games out of seemingly nothing.

Genuinely what is happening



Comments

  1. Hi Alex! At first, I was hesitant to read your blog because I have been studying all morning and I felt like my brain had gone to utter mush and wasn’t capable of understanding whatever “Turing complete” was. However, I tried to understand and I am glad I did. The concept was actually pretty simple with your explanation and when I saw the relation to Geometry Dash, I sprang out of my seat—almost. I love how you connected something as abstract as Turing to something so seemingly simple as a one-button game, like Geometry Dash. Although, I would argue it’s actually quite complicated.
    Perhaps I think it’s complicated because I am really bad at the game. So bad, in fact, I felt embarrassed for not being able to pass the first two levels so I hired my five-year-old cousin. My only mild flex is completing every level on the trial mode. So be awe-struck I guess. The Spu7nix story was particularly intriguing. It shows how creativity can really push the bounds of a system to an unexpected product/result. The community aspect is important too since a shared determination can make sense or progress out of the most diabolical situations (I’m referring to that scary image you included at the bottom).

    ReplyDelete
  2. Hi Alex! I loved your blog this week; not only is it incredibly enjoyable to read but also brings with it many interesting questions regarding consciousness, computation, and letting go of the screen. Initially, your title reminded me of the Turing test, which gauges whether a computer can act with similar intelligence as a human. With the rapid development of AI, it’s become increasingly relevant. In the future, will we be able to tell the difference between what is artificial and what isn’t? Can we right now?

    AI concern aside, your blog is really interesting. Computer games and computing will always be closely related, and I’m always entertained by people who can create incredibly sophisticated creations in projects that weren’t intended for them, such as building a multi-stage rocket in a Zelda game with a tool that simply allows you to stick random objects together.

    Another trend this blog reminded me of was essentially the opposite of this: rather than turning games into systems far more sophisticated than they were intended to be, people take games down to their simplest elements to run them on almost any device, such as running the game DOOM on virtually every machine from an oscilloscope to a calculator. Either way, the fact that we have games with systems so deep that discoveries are still being made years after their launch is something to treasure—I think it’s fascinating that the game of life can run the game of life.

    ReplyDelete

Post a Comment

Popular posts from this blog

Romir Swar Week 9: Da-da-da-dat-Dat-da-da-da-da-ya-da

Lara Reyes-Terry, Week 9: Good Boy

Emily Nguyen, Week #9: Blink