title: Detect infinite loops in a GHC program
body: <p>In this example, <code>action</code> is an infinite loop created by mistake. Is there a way to detect such loops in a GHC program?</p>
  
  <pre><code>   action bucket manager url = catch
        (action bucket manager url)
        (\(e :: HttpException) -&gt; Logger.warn $ "Problems with " ++ url)
  </code></pre>