<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Unboxing Virgil ADTs for Fun and Profit · HackerPapers discussions</title><link>https://hackerpaper.kaipfister.de/p/2410.11094/</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/2410.11094/feed.xml" rel="self" type="application/rss+xml" /><item><title>Unboxing Virgil ADTs for Fun and Profit — mentioned by titzer</title><link>https://news.ycombinator.com/item?id=46749509</link><guid isPermaLink="false">urn:hackerpapers:mention:2410.11094:46749509</guid><pubDate>Sun, 25 Jan 2026 01:00:15 GMT</pubDate><description>&lt;p&gt;The description is in the paper, but not all of it is implemented. https://arxiv.org/abs/2410.11094 Bradley implemented a prototype of the packing solver, but it doesn&amp;#x27;t do the full generality of what is proposed in the paper.&lt;/p&gt;&lt;p&gt;&lt;a href="https://hackerpaper.kaipfister.de/p/2410.11094/"&gt;Paper and discussion history&lt;/a&gt;. A mention is not an endorsement.&lt;/p&gt;</description><category>cs.PL</category></item><item><title>Unboxing Virgil ADTs for Fun and Profit — mentioned by titzer</title><link>https://news.ycombinator.com/item?id=46749499</link><guid isPermaLink="false">urn:hackerpapers:mention:2410.11094:46749499</guid><pubDate>Sun, 25 Jan 2026 00:58:56 GMT</pubDate><description>&lt;p&gt;You might want to have a look at the unboxing and packing annotations that are proposed for Virgil. The unboxing mechanism is implemented and there was a prototype of the packing mechanism implemented by Bradley for his thesis. I am working on making a more robust implementation that I can land. https://arxiv.org/abs/2410.11094 I&amp;#x27;m not sure I understand your example; if I am looking at it right, it has overlapping bitfields. But supposing you didn&amp;#x27;t want overlapping fields, you could write: type Dang(tom: u11, baz: u16, bar: u5, foo: u5) #packed; And the compiler would smash the bits together…&lt;/p&gt;&lt;p&gt;&lt;a href="https://hackerpaper.kaipfister.de/p/2410.11094/"&gt;Paper and discussion history&lt;/a&gt;. A mention is not an endorsement.&lt;/p&gt;</description><category>cs.PL</category></item><item><title>Unboxing Virgil ADTs for Fun and Profit — HN submission</title><link>https://news.ycombinator.com/item?id=41866043</link><guid isPermaLink="false">urn:hackerpapers:submission:2410.11094:41866043</guid><pubDate>Thu, 17 Oct 2024 03:02:52 GMT</pubDate><description>&lt;p&gt;Unboxing Virgil ADTs for Fun and Profit&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;2 points; 2 discussion replies on HN. &lt;a href="https://hackerpaper.kaipfister.de/p/2410.11094/"&gt;Paper and source history&lt;/a&gt;. A submission is not an endorsement.&lt;/p&gt;</description><category>cs.PL</category></item></channel></rss>
