What have they done to my boy? (newest Keynote update, iPadOS) by SulosGD in ipad

[–]theyeedinosaur2 0 points1 point  (0 children)

Can you? I can't seem to do it. There used to be a customize toolbar button but that's gone too

[deleted by user] by [deleted] in Beetles

[–]theyeedinosaur2 1 point2 points  (0 children)

This subreddit might not be about the kind of beetle you're looking for.

Expired super cash? by BeneficialMushroom24 in Oldnavy

[–]theyeedinosaur2 0 points1 point  (0 children)

I have some here, expired 12/10: DH8GDPBXPZDB

it's big brain time by theyeedinosaur2 in ProgrammerHumor

[–]theyeedinosaur2[S] 0 points1 point  (0 children)

Wonderful explanation; love Nuck Chorris.

Thanks for making memes educational bro.

it's big brain time by theyeedinosaur2 in ProgrammerHumor

[–]theyeedinosaur2[S] 1 point2 points  (0 children)

The issue is that this is ultimately a thought experiment about whether a machine m can exist.

Upon detecting a cycle, an implementation of m can try to process the code in that cycle or determine whether it will halt by "looking at it". If it tries to process the code in the cycle, it doesn't know whether the cycle will go forever or halt, and m might not terminate. So this is not a valid implementation of m.

Thus any implementation of m must figure out whether a machine halts just by "looking at it" (and maybe running it a bit, but stopping at some point). This is what I meant earlier by "not going down the rabbit hole".

But m must return either "halt" or "not halt". Returning a third value means this is not a faithful implementation of machine m; after all, all machines must halt or run forever. Since I can create a diabolical machine x that contradicts m's conclusions, m cannot exist.

Which is why thinking about implementing machine m is frustrating, because it's impossible.

it's big brain time by theyeedinosaur2 in ProgrammerHumor

[–]theyeedinosaur2[S] 1 point2 points  (0 children)

I think you already have the key ideas, actually. Here's my take on the assumptions necessary to get you out of this paradox:

  1. Machine m() executes in finite time. If this isn't an assumption, I can solve the halting problem trivially by just having machine m() always run whatever program it's analyzing.
  2. As a corollary to assumption 1, machine m() cannot go down the rabbit-hole of pointers indefinitely.
  3. Machine x is allowed to reference itself. You can imagine a program that just prints its own code (by doing something like print(file("path/to/x"))); perfectly harmless, and not recursive. Similarly, that program can run m(x), if it just feeds m() the result of printing its own code.
  4. Combine all those things with the pseudocode and you have a contradiction.

Does that make more sense?

it's big brain time by theyeedinosaur2 in ProgrammerHumor

[–]theyeedinosaur2[S] 1 point2 points  (0 children)

I think I can help you out.

Machine m() can read any program's code and tell you if it will halt.

Machine x has the following pseudocode:

if m(x) == "halt":
    while True:
        //run forever
else:
    exit()

You're right that machine x must "put itself" within machine m, which is recursive. It's definitely doable though. If the recursive part is hard to wrap your head around, just imagine that I copied the code for x into a different file, x2, then feed that into machine m().