imiT a Time Traveling Programming Language Discussion

Is this just bad programming with goto?

KeithSimpson said:
Is this just bad programming with goto?

Kind of, but every time you travel back in a timeline is permanent, and any changes are permanent. Each travel back sets the new timeline to the state of the program at that moment instead of just moving to another location.

@Shawn
I haven’t checked the language yet, but this seems very similar to Prolog’s backtracking. Is that right? I’ll check your post when I have some time. :slightly_smiling_face:

Kit said:
@Shawn
I haven’t checked the language yet, but this seems very similar to Prolog’s backtracking. Is that right? I’ll check your post when I have some time. :slightly_smiling_face:

I don’t know much about Prolog, but I’ve heard others mention something similar haha. I didn’t draw inspiration from it, so I’m curious to find out how mine stands out.

@Shawn
You might find Warren’s Abstract Machine interesting.

@Shawn
So like calling fork() every time you hit a label/goto?

@Shawn
You need to read Charles Stross 's short novel Palimpsest…

@Shawn
Old school C64 Basic’s goto would work much like this with all variables being global. Also, it could be fascinating to run a shell script like this:

~ % cat prime.sh
#!/usr/bin/env bash
x=10
echo $x
if [ "${x+set}" = set ]; then
  cat prime.sh | grep -v 'x=' > alt.sh
  chmod u+x alt.sh
  ./alt.sh
fi
~ % ./prime.sh 
10

~ %

@Thorn
No, it wouldn’t. No kind of old school goto would reset variables to how they were several lines back.

@Thorn
I forgot to write that back then and was focused on basic. To be honest, I prefer the second one with the self-modifying shell script and (I suppose) multiple shell instances :slight_smile: that should largely work and may cause quite a bit of chaos :slight_smile:

@Tavi
Thanks! For additional timelines, I was considering adding a UUID so alternate timelines could coexist.

KeithSimpson said:
Is this just bad programming with goto?

Is it bad programming with goto?

Reilly said:

KeithSimpson said:
Is this just bad programming with goto?

Is it bad programming with goto?

yes

and it is worse than goto

Hey, do I need a downstairs neighbor selling CRTs to reach the right worldline? Maybe like…

create steins; gate;

…?

Westley said:
Hey, do I need a downstairs neighbor selling CRTs to reach the right worldline? Maybe like…

create steins; gate;

…?

You will also need a friend who’s good at hacking SERN.

@Sable
create friend;

Westley said:
Hey, do I need a downstairs neighbor selling CRTs to reach the right worldline? Maybe like…

create steins; gate;

…?

:0

This reminds me of this: GitHub - ambulancja/mariposa: A toy programming language with time travel

It’s a great read!

Is this ACID compliant?

Zane said:
Is this ACID compliant?

But is it even web scale? You should use MongoDB. MongoDB is web scale.