<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: orlp</title><link>https://news.ycombinator.com/user?id=orlp</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 06 Apr 2026 05:12:21 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=orlp" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by orlp in "Defer available in gcc and clang"]]></title><description><![CDATA[
<p>In university? No, absolutely not straight away.<p>The point of a CS degree is to know the fundamentals of computing, not the latest best practices in programming that abstract the fundamentals.</p>
]]></description><pubDate>Fri, 20 Feb 2026 07:35:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=47084882</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=47084882</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47084882</guid></item><item><title><![CDATA[New comment by orlp in "A Pokémon of a Different Color"]]></title><description><![CDATA[
<p>Why do you find it in interesting that someone chose something mainstream? Isn't that the definition of mainstream, that it's a common choice?</p>
]]></description><pubDate>Thu, 19 Feb 2026 14:05:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=47073841</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=47073841</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47073841</guid></item><item><title><![CDATA[New comment by orlp in "Why is the sky blue?"]]></title><description><![CDATA[
<p>In modern usage (e.g. in gaming communities) "carries" has become not only ambitransitive but also a noun.<p>If something "carries" or is "a carry", it means it is so strong it metaphorically carries the rest of the setup with it. For example:<p>> This card carries.<p>> These two are the carries of the team.</p>
]]></description><pubDate>Tue, 10 Feb 2026 08:10:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=46956710</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=46956710</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46956710</guid></item><item><title><![CDATA[New comment by orlp in "Attention at Constant Cost per Token via Symmetry-Aware Taylor Approximation"]]></title><description><![CDATA[
<p>> N tokens looking at N tokens is quadratic<p>Convolving two arrays can be done perfectly accurately in O(n log n), despite every element being combined with every other element.<p>Or consider the even more basic sum of products a[i] * b[j] for all possible i, j:<p><pre><code>    total = 0
    for i in range(len(a)):
        for j in range(len(b)):
            total += a[i] * b[j]
</code></pre>
This can be computed in linear time as sum(a) * sum(b).<p>Your logic that 'the result contains terms of all pairs, therefore the algorithm must be quadratic' simply doesn't hold.</p>
]]></description><pubDate>Wed, 04 Feb 2026 18:59:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=46890076</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=46890076</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46890076</guid></item><item><title><![CDATA[New comment by orlp in "The largest number representable in 64 bits"]]></title><description><![CDATA[
<p>An interesting follow-up question is, what is the smallest number unable to be encoded in 64 bits of binary lambda calculus?</p>
]]></description><pubDate>Mon, 02 Feb 2026 22:03:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=46862377</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=46862377</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46862377</guid></item><item><title><![CDATA[New comment by orlp in "Binary fuse filters: Fast and smaller than xor filters (2022)"]]></title><description><![CDATA[
<p>Bloom filters also become full.<p>As it fills up the false probability rate goes up. Once the false probability rate reaches the threshold of unacceptability, the bloom filter is full, and you can no longer insert into it.<p>That most interfaces still let you do something that looks like an insert is an interface failure, not a bloom filter feature.<p>If you find this controversial and want to reply "I don't have a threshold of unacceptability", I'll counter that a false probability rate of 100% will be reached eventually. And if you still find that acceptable, you can trivially modify any probabilistic filter to "never become full" by replacing the "is full" error condition with setting a flag that all future queries should return a false positive.</p>
]]></description><pubDate>Fri, 23 Jan 2026 15:31:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=46733678</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=46733678</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46733678</guid></item><item><title><![CDATA[New comment by orlp in "Binary fuse filters: Fast and smaller than xor filters (2022)"]]></title><description><![CDATA[
<p>Same author.</p>
]]></description><pubDate>Thu, 22 Jan 2026 08:05:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=46716479</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=46716479</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46716479</guid></item><item><title><![CDATA[New comment by orlp in "Scaling long-running autonomous coding"]]></title><description><![CDATA[
<p>> Long-running projects that converge on high-quality, complex projects<p>In my experience agents don't converge on anything. They diverge into low-quality monstrosities which at some point become entirely unusable.</p>
]]></description><pubDate>Thu, 15 Jan 2026 07:33:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=46629283</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=46629283</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46629283</guid></item><item><title><![CDATA[Rust Is Perfectly Imperfect]]></title><description><![CDATA[
<p>Article URL: <a href="http://0x80.pl/notesen/2026-01-08-imperfect-rust.html">http://0x80.pl/notesen/2026-01-08-imperfect-rust.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=46562179">https://news.ycombinator.com/item?id=46562179</a></p>
<p>Points: 3</p>
<p># Comments: 1</p>
]]></description><pubDate>Sat, 10 Jan 2026 02:32:36 +0000</pubDate><link>http://0x80.pl/notesen/2026-01-08-imperfect-rust.html</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=46562179</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46562179</guid></item><item><title><![CDATA[New comment by orlp in "Rue: Higher level than Rust, lower level than Go"]]></title><description><![CDATA[
<p>I work in a 400k+ LOC codebase in Rust for my day job. Besides compile times being suboptimal, Rust makes working in a large codebase a breeze with good tooling and strong typechecking.<p>I almost never even think about the borrow checker. If you have a long-lived shared reference you just Arc it. If it's a circular ownership structure like a graph you use a SlotMap. It by no means is any harder for this codebase than for small ones.</p>
]]></description><pubDate>Mon, 22 Dec 2025 15:35:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=46354940</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=46354940</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46354940</guid></item><item><title><![CDATA[New comment by orlp in "Ireland’s Diarmuid Early wins world Microsoft Excel title"]]></title><description><![CDATA[
<p>The person you replied to stated:<p>> how productive power users in different [fields] can be with their tools<p>There are a lot more tools in programming than your text editor. Linters, debuggers, AI assistants, version control, continuous integration, etc.<p>I personally know I'm terrible at using debuggers. Is this a shortcoming of mine? Probably. But I also feel debuggers could be a lot, lot better than they are right now.<p>I think for a lot of us reflecting at our workflow and seeing things we do that could be done more efficiently with better (usage of) tooling could pay off.</p>
]]></description><pubDate>Sat, 20 Dec 2025 22:17:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=46340152</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=46340152</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46340152</guid></item><item><title><![CDATA[New comment by orlp in "Slowness is a virtue"]]></title><description><![CDATA[
<p>When "everybody is better", you can still increase your relative rank to other people if you benefit even more.<p>For example if I were to give $1 to every person on earth, but $100 million to you, everyone would be richer but you would be a lot richer still.</p>
]]></description><pubDate>Thu, 18 Dec 2025 13:22:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=46312326</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=46312326</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46312326</guid></item><item><title><![CDATA[New comment by orlp in "Two recently found works of J.S. Bach presented in Leipzig [video]"]]></title><description><![CDATA[
<p>> Do you have any particular pieces in mind when you wrote this?<p>(not me, but...)<p>Bach - Passacaglia & Fugue in C minor, BWV 582<p>> But one wonders what he could have made without those constraints.<p>Bach-Busoni - Chaconne from Partita No. 2 in D minor, BWV 1004</p>
]]></description><pubDate>Fri, 21 Nov 2025 10:10:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=46003044</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=46003044</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46003044</guid></item><item><title><![CDATA[New comment by orlp in "John Carmack on mutable variables"]]></title><description><![CDATA[
<p>Rust works this way, yes. There are escape hatches though, which allow interior mutability.</p>
]]></description><pubDate>Fri, 31 Oct 2025 08:21:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=45769515</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=45769515</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45769515</guid></item><item><title><![CDATA[New comment by orlp in "Amazon confirms 14,000 job losses in corporate division"]]></title><description><![CDATA[
<p>Passive voice deflects responsibility and agency.<p>Loss happens, firings are a decision.</p>
]]></description><pubDate>Tue, 28 Oct 2025 12:11:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=45731767</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=45731767</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45731767</guid></item><item><title><![CDATA[New comment by orlp in "Valorant's 128-Tick Servers (2020)"]]></title><description><![CDATA[
<p>No, OSRS is 100 ticks per minute which gives 0.6 second ticks, which rounds to 1.667 ticks per second.</p>
]]></description><pubDate>Mon, 06 Oct 2025 22:31:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=45497039</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=45497039</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45497039</guid></item><item><title><![CDATA[New comment by orlp in "SedonaDB: A new geospatial DataFrame library written in Rust"]]></title><description><![CDATA[
<p>I'm working on implementing extension types in Polars. Stay tuned.</p>
]]></description><pubDate>Wed, 24 Sep 2025 20:22:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=45365509</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=45365509</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45365509</guid></item><item><title><![CDATA[New comment by orlp in "From Rust to reality: The hidden journey of fetch_max"]]></title><description><![CDATA[
<p>Aarch64 does indeed have a proper atomic max, but even on x86-64 you can get a wait-free atomic max as long as you only need to support integers up to 64. In that case you can simply do a `lock or` with 1 << i as your maximum. You can even support larger sizes by using multiple registers, e.g. four 64-bit registers for a u8 maximum.<p>In most cases it's even better to just store a maximum per thread separately and loop over all threads once to compute the current maximum if you really need it.</p>
]]></description><pubDate>Tue, 23 Sep 2025 23:43:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=45354325</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=45354325</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45354325</guid></item><item><title><![CDATA[New comment by orlp in "Pointer Tagging in C++: The Art of Packing Bits into a Pointer"]]></title><description><![CDATA[
<p>I take it you never wrote code involving atomic pointers. Regardless of memory usage, a lot of platforms only provide single-word atomics (efficiently), making bitpacking crucial for lockfree algorithms.</p>
]]></description><pubDate>Mon, 22 Sep 2025 08:11:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=45330462</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=45330462</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45330462</guid></item><item><title><![CDATA[New comment by orlp in "Pointer Tagging in C++: The Art of Packing Bits into a Pointer"]]></title><description><![CDATA[
<p>> Reliable pointer tagging is not trivial.<p>It is if you use alignment bits. Not always possible if you don't control the data though.</p>
]]></description><pubDate>Mon, 22 Sep 2025 08:09:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=45330450</link><dc:creator>orlp</dc:creator><comments>https://news.ycombinator.com/item?id=45330450</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45330450</guid></item></channel></rss>