<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: iigijshaba</title><link>https://news.ycombinator.com/user?id=iigijshaba</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 11 Jul 2026 22:05:24 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=iigijshaba" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by iigijshaba in "My Thoughts on the Bun Rust Rewrite"]]></title><description><![CDATA[
<p>Those systems are primarily written in C or C++-but-in-C-style, right? Without exploiting RAII among other features, as Jarred mentioned that he liked in Rust. While Rust took RAII from C++.</p>
]]></description><pubDate>Thu, 09 Jul 2026 13:48:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=48845803</link><dc:creator>iigijshaba</dc:creator><comments>https://news.ycombinator.com/item?id=48845803</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48845803</guid></item><item><title><![CDATA[New comment by iigijshaba in "Postgres rewritten in Rust, now passing 100% of the Postgres regression tests"]]></title><description><![CDATA[
<p>Now that I have taken a closer look, the code looks significantly better than it seemed at first glance, though there are still peculiarities, and some drawbacks.<p>An unfortunate aspect is that the code has become a bit more bloated in some regards due to usage of Result, instead of an implicit elog() macro and similar. Passing Result around, in some ways as an alternative to an unwinding exception, is cleaner in some ways, but it also bloats the code somewhat.<p>The rewrite also could have simpler code in some cases, like<p><a href="https://github.com/malisper/pgrust/blob/3646a73515a5e4ac7d0b7df88c61b180e1cabdb2/crates/backend/catalog/pg_inherits/src/lib.rs#L457" rel="nofollow">https://github.com/malisper/pgrust/blob/3646a73515a5e4ac7d0b...</a><p>could perhaps just be<p>match syscache_seams::search_pg_class_full_form::call(ctx.mcx(), relationId)? {<p><pre><code>        Some(form) => Ok(form.relhassubclass),

        None => {

            Err(ereport(ERROR)
                .errmsg(format!("cache lookup failed for relation {relationId}"))
                .into_error())

        }

    }
</code></pre>
but that is a smaller thing.<p>I see a lot of MemoryContext. I am not sure how much that bloats the code (though the C code is bloated due to C's issues and problems, like re-using collections and such). Does it incur an overhead?</p>
]]></description><pubDate>Thu, 09 Jul 2026 12:04:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=48844546</link><dc:creator>iigijshaba</dc:creator><comments>https://news.ycombinator.com/item?id=48844546</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48844546</guid></item><item><title><![CDATA[New comment by iigijshaba in "Postgres rewritten in Rust, now passing 100% of the Postgres regression tests"]]></title><description><![CDATA[
<p>More that I got confused by the C function returning bool, not as an error value, but as a result, which is my fault for skimming it quickly.<p>I have taken a closer look at the code, and it seems superficially a somewhat faithful rewrite, not quite idiomatic Rust, but closer than I anticipated at first. I know there are non-LLM rewriting tools for C to Rust, and with a test suite to help, a rewrite to Rust might be greatly helped. The new Rust code does have some drawbacks in some ways, and there are topics I am curious about.</p>
]]></description><pubDate>Thu, 09 Jul 2026 11:48:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=48844351</link><dc:creator>iigijshaba</dc:creator><comments>https://news.ycombinator.com/item?id=48844351</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48844351</guid></item><item><title><![CDATA[New comment by iigijshaba in "Postgres rewritten in Rust, now passing 100% of the Postgres regression tests"]]></title><description><![CDATA[
<p>I have read up on it again, and while it was entirely dysfunctional at the very early stages, it quickly came up to par or beyond, with the LLM especially helped by the huge test suite written in Typescript, different from both Zig and Rust.<p>However, Jarred still describes a lot of unsafe, and usage of Miri in continuous integration.<p>Funnily enough, RAII is cited as a major benefit of rewriting from Zig to Rust, while C++ already has RAII. I wonder if C++ and Rust are more suited to larger programs than Zig, unless the architecture in Zig is handled carefully.</p>
]]></description><pubDate>Thu, 09 Jul 2026 11:42:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=48844287</link><dc:creator>iigijshaba</dc:creator><comments>https://news.ycombinator.com/item?id=48844287</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48844287</guid></item><item><title><![CDATA[New comment by iigijshaba in "Postgres rewritten in Rust, now passing 100% of the Postgres regression tests"]]></title><description><![CDATA[
<p>Sorry, I wrongly assumed in the C code when I skimmed it that the boolean was for error handling, not the result value. The elog() macro is used for error handling.</p>
]]></description><pubDate>Thu, 09 Jul 2026 11:06:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=48843948</link><dc:creator>iigijshaba</dc:creator><comments>https://news.ycombinator.com/item?id=48843948</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48843948</guid></item></channel></rss>