4 ms·
Or it just refuses to compile/execute something it can't prove terminates.
by qu4z-2 12y ago
Or it just refuses to compile/execute something it can't prove terminates.
- TheCoelacanth 12y agoThat would make it non-Turing complete. Of course there probably aren't many interesting programs that are ruled out by that restriction.
- marcosdumay 12y agoThere are many interesting programs that don't ave any guarantee that they terminate. A a few that don't really terminate, ever. In fact, if you click on the launcher menu on your computer, I'll bet most programs there just keep going, until some random event (AKA clicking on an "x") throws them out of the loop.
- TheCoelacanth 12y agoIt wouldn't require that all programs terminate, just that all functions terminate.
- marcosdumay 12y agoYour programs aren't composed of one top-level function?
- TheCoelacanth 12y agoMore likely they would be composed on one top-level IO value, like in Haskell, or something similar.
- eru 12y agoThat's why you'd ask your programs to be `productive'. Also look up co-recursion and co-data, if you want to find out more about this. (It's basically the logical way to extend `termination' from batch programs to things like continuously running programs like operating systems.)
- qu4z-2 12y agoThat is a very good point.