articles
articles copied to clipboard
loeb: how to detect non-termination?
In the https://github.com/quchen/articles/blob/master/loeb-moeb.md article it is written:
The interesting part is that the order of the functions is not necessarily left-to-right. The list elements can be swapped around, as long as the circularity is still resolved (otherwise the function won't terminate):
Can you give a more accurate definition of what this “circularity” means? Ie. what is the exact property that must be satisfied in order to avoid non-termination?
I’m trying to debug an issue in the hnix Haskell package where the function loebM causes an infinite loop. I’d like to understand exactly why this happens in order to print out a helpful error instead of looping indefinitely.