Comment by layer8
11 hours ago
The purpose is to free optimizers from solving the halting problem (and similar undecidable propositions), which they can’t. So the approach is to reduce the allowable programs to those that optimizers can reliably reason about. By the very nature of the problem, these programs cannot in general be distinguished by an algorithm, because again that would require solving the halting problem. So the non-allowable programs are simply declared to be out-of-scope (aka UB).
It’s a controversial trade-off to be sure, but it’s not like there isn’t a sound logic to it.
No comments yet
Contribute on Hacker News ↗