<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>General Recursion via Coinductive Types · HackerPapers discussions</title><link>https://hackerpaper.kaipfister.de/p/cs_0505037/</link><description>Collected HN comments and submissions linking this paper.</description><language>en</language><lastBuildDate>Mon, 02 Nov 2026 11:16:22 GMT</lastBuildDate><atom:link href="https://hackerpaper.kaipfister.de/p/cs_0505037/feed.xml" rel="self" type="application/rss+xml" /><item><title>General Recursion via Coinductive Types — mentioned by chriswarbo</title><link>https://news.ycombinator.com/item?id=35457581</link><guid isPermaLink="false">urn:hackerpapers:mention:cs_0505037:35457581</guid><pubDate>Wed, 05 Apr 2023 17:27:29 GMT</pubDate><description>&lt;p&gt;&amp;gt; On paper perhaps, but I have yet to see a compiler that can take any arbitrary recursive subroutine and automatically optimize it into a Tail Call Optimized (that is, transform the recursive parts into goto/jumps similar to a loop) version. General recursion can be modelled coinductively via the &amp;quot;Delay&amp;quot; or &amp;quot;Partial&amp;quot; type, e.g. https://arxiv.org/abs/cs/0505037 Type-inference can figure out when recursive calls need to be wrapped in `Later`. We can then compile into a single `while` loop to unwrap the layers.&lt;/p&gt;&lt;p&gt;&lt;a href="https://hackerpaper.kaipfister.de/p/cs_0505037/"&gt;Paper and discussion history&lt;/a&gt;. A mention is not an endorsement.&lt;/p&gt;</description><category>cs.LO</category></item></channel></rss>
