you are viewing a single comment's thread
view the rest of the comments
[–] 30 points 1 year ago (7 children)

I had a visceral reaction to this because obviously the wish count should be decremented before the wish takes place. Even though I can't think up a convincing technical argument for it.

  • source
  • hideshow 7 child comments
  • [–] 15 points 1 year ago (4 children)

    If there's parallelism/async involved, then there definitely is an argument to decrement first, execute later. Otherwise you could make a wish for the genie to just wait for an hour and then make as many wishes as you want within that hour.

  • source
  • parent
  • hideshow 4 child comments
  • [–] 3 points 1 year ago (2 children)

    But how can you decrement a future dated wish, since you can't guarantee nothing will happen that prevents the genies ability from executing said wish? E.g. i mean like telling the Genie to do something 5 days from now, not your example which would begin immediately after making said wish.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 4 points 1 year ago

    You decrement the wish counter first, execute the action (which includes waiting those 5 days), and if it fails you increment the counter back. Something like this:

    wishes = wishes - 1;
    executeWish(wish).unwrap_or_else(|_| { wishes = wishes + 1; })?
    

    This way if the action fails in the future, you get a wish back and can ask something else.

  • source
  • parent
  • I always thought that wish-granting is instant, even if the effects of that wish are delayed.

    So if I wish for something to happen in 5 days, it's granted in the moment and guaranteed to happen. That raises a question though: Can I wish to cancel a wish I have already made, but whose effect has not yet taken hold? On its face, this should be possible, but if we take it as a given that all valid wishes are always granted at the moment of utterance, then it might be physically/psychologically impossible for me or anyone else to revoke the wish before its IRL effect is complete.

  • source
  • parent
  • [–] 3 points 1 year ago

    I had a visceral reaction to this because obviously the wish count should be decremented before the wish takes place.

    Why? Shouldn't you decrement the limited resource the user has access to in case the thing you are doing fails?

  • source
  • parent