<story><title>Show HN: Micro-mitten – Research language with compile-time memory management</title><url>https://github.com/doctorn/micro-mitten</url><text>I&amp;#x27;ve been working on implementing the compile-time approach to memory management described in this thesis (https:&amp;#x2F;&amp;#x2F;www.cl.cam.ac.uk&amp;#x2F;techreports&amp;#x2F;UCAM-CL-TR-908.pdf) for some time now - some of the performance results look promising! (Although some less so...) I think it would be great to see this taken further and built into a more complete functional language.</text></story><parent_chain></parent_chain><comment><author>steveklabnik</author><text>I haven&amp;#x27;t dug into the details a ton, but I am excited to see this! Would love to see more research in this direction.&lt;p&gt;&amp;gt;  micro-mitten&amp;#x27;s approach is significantly different from Rust&amp;#x27;s. Rather than depending on single ownership and a complex lifetime system, micro-mitten uses a series of data-flow analyses to statically approximate heap liveness.&lt;p&gt;To be clear, Rust these days also looks at control-flow. This was what all the &amp;quot;non-lexical lifetimes&amp;quot; hubbub was about. And the next generation checker is based on datalog...</text></comment>
<story><title>Show HN: Micro-mitten – Research language with compile-time memory management</title><url>https://github.com/doctorn/micro-mitten</url><text>I&amp;#x27;ve been working on implementing the compile-time approach to memory management described in this thesis (https:&amp;#x2F;&amp;#x2F;www.cl.cam.ac.uk&amp;#x2F;techreports&amp;#x2F;UCAM-CL-TR-908.pdf) for some time now - some of the performance results look promising! (Although some less so...) I think it would be great to see this taken further and built into a more complete functional language.</text></story><parent_chain></parent_chain><comment><author>TheAsprngHacker</author><text>Discussion on r&amp;#x2F;ProgrammingLanguages: &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;www.reddit.com&amp;#x2F;r&amp;#x2F;ProgrammingLanguages&amp;#x2F;comments&amp;#x2F;gfgn0r&amp;#x2F;research_programming_language_with_compiletime&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;www.reddit.com&amp;#x2F;r&amp;#x2F;ProgrammingLanguages&amp;#x2F;comments&amp;#x2F;gfgn0...&lt;/a&gt;&lt;p&gt;Discussion on r&amp;#x2F;rust: &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;www.reddit.com&amp;#x2F;r&amp;#x2F;rust&amp;#x2F;comments&amp;#x2F;gfgt1b&amp;#x2F;rustlike_language_with_static_memory_management&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;www.reddit.com&amp;#x2F;r&amp;#x2F;rust&amp;#x2F;comments&amp;#x2F;gfgt1b&amp;#x2F;rustlike_langu...&lt;/a&gt;&lt;p&gt;I look at this and I think it&amp;#x27;s a innovative and promising idea - the freedom of a garbage collected language, but with  the tracing done as a type-aware static analysis, and the cleanup code inserted at compile-time!</text></comment>