Please no
All languages should follow the same rules, and being incapable of doing something isn't reason for special treatment. And this would be a big rules change for decision problems in every language.
A good number of existing answers could be easily outgolfed by invoking this new option. For example, on Is this number an integer power of -2?, I can cut 3 bytes from the shortest Python answer, 6 bytes from the shortest Haskell answer, and many others, just by removing their bases cases of 0.
Challenges about searching for an object could now be done by enumerating them without limit until one works. For example, the challenge Reachable numbers to check if the input is the totient function of some number can now be done as:
n=input()
i=1
while phi(i)!=n:i+=1
This gets around bounding the maximum possible i
, which all existing answers do. This stinks of a hidden rule: an output method that golfers and decision-problem writers wouldn't know is valid unless told so.
The obvious expectation that output methods produce a result. Running code that just keeps going isn't something one would expect to call solving a decision problem. No matter how long you run it, you don't know if it is still yet to halt. Even if you can prove it runs forever, this is not observable: it requires examining the code itself.
Moreover, it defies the meaning of "decision" in computation, that a machine that decides a language must halt by accepting or rejecting, and would let us submit entries to "solve" decision problems that are undecidable, which is ridiculous.
while 1:pass
) \$\endgroup\$