<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: quuxplusone</title><link>https://news.ycombinator.com/user?id=quuxplusone</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 13 Jun 2026 15:51:08 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=quuxplusone" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by quuxplusone in "Job: Head of Stonehenge"]]></title><description><![CDATA[
<p>"Just to be clear, you <i>are</i> saying you manage a hedge fund, right?"<p>"Yeah, a henge fund."<p>"Hedge fund."<p>"Henge fund."<p>"Hedge."<p>"Henge."<p>"...I think we're on the same page."</p>
]]></description><pubDate>Tue, 09 Jun 2026 04:29:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=48456417</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48456417</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48456417</guid></item><item><title><![CDATA[New comment by quuxplusone in "Show HN: Gitdot – A better GitHub. Open-source, written in Rust"]]></title><description><![CDATA[
<p>As a banner or something, maybe. But I'd much rather see a broken-looking site on mobile than see nothing at all on mobile.<p>In the same category: websites that display nothing but a splash screen "This site requires Internet Explorer X" or whatever. Don't nanny me, just feed my browser the HTML! Whether my browser can render it properly is my problem, not yours.</p>
]]></description><pubDate>Mon, 08 Jun 2026 23:49:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=48454094</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48454094</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48454094</guid></item><item><title><![CDATA[New comment by quuxplusone in "Games Between Programs: The Ruliology of Competition"]]></title><description><![CDATA[
<p>In the middle of this too-long-and-rambling piece, there's a sketch of an interesting sequence: look for the text "universal winner." Let a(n) be the size of the smallest "coin-matching player" DFA that eventually matches the output of its n-state opponent no matter the identity of that opponent. a(1) is obviously 2 (right?); Wolfram indicates a(2) <= 10; what is a(3)?<p>This is different from the problem of <i>identifying</i> the opponent, which obviously requires at least as many states as there are opponents.<p>Is this sequence in the OEIS? Is a(3) even known?</p>
]]></description><pubDate>Sun, 07 Jun 2026 15:48:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=48435975</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48435975</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48435975</guid></item><item><title><![CDATA[New comment by quuxplusone in "The back cover of C++: The Language raises questions not answered by front cover"]]></title><description><![CDATA[
<p>Yep. (Discussed more than once on HN, which is why I know this link exists:)<p><a href="https://nmap.org/movies/" rel="nofollow">https://nmap.org/movies/</a></p>
]]></description><pubDate>Sat, 06 Jun 2026 17:03:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=48426850</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48426850</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48426850</guid></item><item><title><![CDATA[New comment by quuxplusone in "C++: The Documentary"]]></title><description><![CDATA[
<p>The reason I'd want "frozen-size vector" is to replace pairs of data members of the form `T* foos; size_t foos_len;` without paying another 8 bytes to store a useless capacity that's never going to change.<p>But I don't think that makes such a container worth adding to the STL. So far, it hasn't even been worth writing in our own code. But that's the reason I've <i>thought</i> about writing it.</p>
]]></description><pubDate>Fri, 05 Jun 2026 23:22:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=48419635</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48419635</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48419635</guid></item><item><title><![CDATA[New comment by quuxplusone in "Branchless Quicksort faster than std:sort and pdqsort with C and C++ API"]]></title><description><![CDATA[
<p>FWIW, I believe that's not a mistake, just a consistent use of (novel?) jargon. From context I infer that the paragraph is distinguishing between the _hard requirements_ of the traits (quote: "the language contract says they cannot become unsafe") and the behavior human programmers would naturally _expect_ of the traits ("the social contract").<p>And yes, looking at <a href="https://docs.rs/misfortunate/latest/misfortunate/index.html" rel="nofollow">https://docs.rs/misfortunate/latest/misfortunate/index.html</a> and Ctrl+F'ing for "social contract," I see that usage very consistently. The entire point of Misfortunate is that its types correctly implement the language contract, while violating the "social contract" in various surprising ways. For example, causing a hash collision on every operation is a perfectly cromulent implementation of Hash, but violates the "social contract" of Hash. For another example, look at LoadLetter — throwing an error on every operation is a valid implementation of Read, but still violates the "social contract" of what a human programmer would naturally expect from something readable.</p>
]]></description><pubDate>Fri, 05 Jun 2026 14:06:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=48412776</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48412776</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48412776</guid></item><item><title><![CDATA[New comment by quuxplusone in "Branchless Quicksort faster than std:sort and pdqsort with C and C++ API"]]></title><description><![CDATA[
<p>...Ah, `heap_sort` is used only for trivially copyable types. So my complaint about not distinguishing copy from move is essentially unimportant (matters only in pathological cases that we shouldn't worry about).<p>But it's perfectly possible for a type to be "trivially copyable" without being "default-constructible." An example of such a type from the STL: `std::reference_wrapper<int>`.<p>Anyway, looks like a quick fix for this would be to just extend the list of traits on which blqsort is gated (currently `is_trivially_copyable` and `sizeof(T) <= 16`) by adding `is_trivially_default_constructible<T>::value` also.</p>
]]></description><pubDate>Fri, 05 Jun 2026 02:15:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=48407176</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48407176</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48407176</guid></item><item><title><![CDATA[New comment by quuxplusone in "Branchless Quicksort faster than std:sort and pdqsort with C and C++ API"]]></title><description><![CDATA[
<p>It's unfortunate that the C++ version of the code assumes the type T is default-constructible (and that the default constructor is cheap). It also assumes that the type T is copy-constructible; at a glance I can't tell if the algorithm <i>depends</i> on making a copy in every place that it <i>does</i> make a copy. E.g. in the `heap_sort` helper we have<p><pre><code>    T k;                       // default-construct
    if (i > 0) k = left[--i];  // copy-assign
</code></pre>
This fairly obviously could be replaced with "copy-construct." Could it be replaced with "move-construct"? I don't know.
Again, in `partition_small`, we have<p><pre><code>    T swbuf[SMALLPART];
</code></pre>
which default-constructs a bunch of Ts. I <i>think</i> we're just going to overwrite that memory in a moment anyway, so constructing all those Ts is a waste of cycles; but I'm not sure.<p>All of my "I don't knows" and "I'm not sures" are due to my own lack of digging into the code; I'm sure one could find out if one really looked.<p>None of that matters if you're just sorting `int` or the benchmarked `struct entry`. But it matters a great deal if you're taking the README literally and trying to sort "types with higher copy costs [...] (such as strings)".</p>
]]></description><pubDate>Fri, 05 Jun 2026 01:38:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=48406960</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48406960</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48406960</guid></item><item><title><![CDATA[New comment by quuxplusone in "Meteor Explodes over Massachusetts"]]></title><description><![CDATA[
<p>The Wikipedia article on "meteor air burst" has an explanation that basically matches yours, although they do use the word "explosion" to describe it. Which makes sense to me: whatever one chooses to call it, it's a nearly instantaneous spontaneous disassembly that is very bright, very hot, and very loud.<p><a href="https://en.wikipedia.org/wiki/Meteor_air_burst" rel="nofollow">https://en.wikipedia.org/wiki/Meteor_air_burst</a></p>
]]></description><pubDate>Thu, 04 Jun 2026 00:16:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=48391986</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48391986</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48391986</guid></item><item><title><![CDATA[New comment by quuxplusone in "Gmail thinks I'm stupid, so I left"]]></title><description><![CDATA[
<p>Is it something about using Chrome? My wife's Gmail was showing the "Press / to help me write" prompt last week and we couldn't figure out (1) how to turn it off nor (2) why _I_ wasn't seeing any such prompt in _my_ Gmail, despite all our Gmail settings being the same as far as I could tell.<p>We both use Chrome (she on Windows, me on Mac), but I could totally believe that I've turned off some shiny AI feature _in Chrome_ that she hadn't.<p>Anyone care to confirm or disprove the hypothesis that there's some setting in Chrome itself that will disable this Gmail feature?</p>
]]></description><pubDate>Tue, 02 Jun 2026 22:27:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=48377187</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48377187</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48377187</guid></item><item><title><![CDATA[New comment by quuxplusone in "Adafruit receives demand letter from Fenwick legal counsel on behalf of Flux.ai"]]></title><description><![CDATA[
<p>An interesting idea I saw long ago in some book (I thought it was K&P's "Software Tools," or my second guess was K&R1, but neither of those panned out — a strong Mandela effect) was the clever idea of a whole-document spellchecker that works purely probabilistically, by histograms: you feed it a document, it tallies the trigraphs, and any trigraph that appears only rarely is flagged as a likely typo. This approach lets through unknown-but-realistic words like "antithematory" while flagging unrealistic words like "prisencolinensinainciusol" (because of its unlikely "ciu" and "ius" clusters) and "antthemaory" (because of "ntt" and "aor").<p>To make this approach work better, feed it a bunch of English text (or whatever language your document is in) before the document you really want to "spellcheck."<p>Essentially this isn't a spell "checker" so much as a spell "linter" — it looks for antipatterns statistically associated with bugs, and reports the patterns for further investigation.<p>If anyone knows where this trigraph-based "spellchecker" was first presented, I'd love to find out again.</p>
]]></description><pubDate>Tue, 02 Jun 2026 14:26:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=48370725</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48370725</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48370725</guid></item><item><title><![CDATA[New comment by quuxplusone in "Shakespeare’s World – I thought this would be simple but"]]></title><description><![CDATA[
<p>> Likewise "Russia" is shown in Siberia, but everyone in Russia lives near the European borders thousands of km west.<p>Yes, and "Love's Labour's Lost" specifically pairs/ contrasts "Russians" with "Muscovites": the "Russia" of St Petersburg is pretty far west of "Moscow."</p>
]]></description><pubDate>Sun, 31 May 2026 01:20:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=48342217</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48342217</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48342217</guid></item><item><title><![CDATA[New comment by quuxplusone in "Shakespeare’s World – I thought this would be simple but"]]></title><description><![CDATA[
<p>A lot of that is bias from the fact the whole map was vibed/hallucinated by an LLM instead of just sourced from (what I'm sure are many) concordances of Shakespeare's works.<p>For example, "The Tempest" famously mentions the "Bermoothes" (Bermuda), but that's not included in this LLM's output for some reason. Any decent subject-index of Shakespeare would include it.</p>
]]></description><pubDate>Sat, 30 May 2026 23:06:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=48341457</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48341457</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48341457</guid></item><item><title><![CDATA[New comment by quuxplusone in "Letter from the Duke of Wellington to the British Foreign Office (1809)"]]></title><description><![CDATA[
<p>Yes (I think). In this particular case I believe you could also say he was <i>created duke</i> (since he was the first Duke of Wellington); I think one would have to say that the second Duke of Wellington <i>succeeded to</i> the dukedom.</p>
]]></description><pubDate>Sat, 30 May 2026 04:44:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=48332671</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48332671</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48332671</guid></item><item><title><![CDATA[New comment by quuxplusone in "My new obsession: A horse-racing board game of pure luck"]]></title><description><![CDATA[
<p>If we're listing modern games vaguely similar to this, we can't let the thread go without mentioning the fantastically entertaining (yet _mostly_ random) "Hot Streak" (2025)!<p><a href="https://boardgamegeek.com/boardgame/446497/hot-streak" rel="nofollow">https://boardgamegeek.com/boardgame/446497/hot-streak</a></p>
]]></description><pubDate>Wed, 27 May 2026 21:00:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=48300607</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48300607</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48300607</guid></item><item><title><![CDATA[New comment by quuxplusone in "Snuffleupagus, a newly described species, is an adorable little predator"]]></title><description><![CDATA[
<p>See also: <a href="https://en.wikipedia.org/wiki/Hensonbatrachus" rel="nofollow">https://en.wikipedia.org/wiki/Hensonbatrachus</a> (Hensonbatrachus kermiti)</p>
]]></description><pubDate>Mon, 25 May 2026 04:20:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=48263359</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48263359</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48263359</guid></item><item><title><![CDATA[New comment by quuxplusone in "Solving the “Zork” Mystery"]]></title><description><![CDATA[
<p>TBF, text adventures absolutely "sprinkle dopamine rewards all over the place." The random-reinforcement effect is a big part of their appeal — as a player, you never quite know if you've seen "all the good stuff" yet.<p>WOOD0350: Did you try using the bird on the dragon? PLAT0550: Did you try going back across the troll bridge after tricking the troll? HHGTTG: Did you CONSULT GUIDE ABOUT everything you found? Frog Fractions: Did you try SCORE? Did you try applying every verb to MYSELF?</p>
]]></description><pubDate>Sun, 24 May 2026 13:55:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=48257306</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48257306</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48257306</guid></item><item><title><![CDATA[New comment by quuxplusone in "sp.h: Fixing C by giving it a high quality, ultra portable standard library"]]></title><description><![CDATA[
<p>The "definition of a heap allocation interface" indicates that there is no <i>standard</i> heap. Instead, there's a standard interface for the use to define their own heaps. Any standard library function that needs to allocate will take a sp_allocator_t parameter, and use that to allocate. As opposed to e.g. strdup, which hard-codes a call to malloc internally. Sp.h's strdup-alike would take an sp_allocator_t as input and call into that to get the memory it needs.<p>A C++ programmer might describe this as "PMR, but not default-constructible. And std::stable_sort takes a PMR allocator parameter. And PMR is the default, and there's no implementation of std::allocator (or new or delete)."</p>
]]></description><pubDate>Sat, 23 May 2026 04:21:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=48244648</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48244648</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48244648</guid></item><item><title><![CDATA[New comment by quuxplusone in "What Is Date:Italy?"]]></title><description><![CDATA[
<p>Yeah, but I took the parent comment as a non-rhetorical question. Say you were one of these "MORE attuned" people of the past: how long [literally] do you think it would take you to notice that the calendar was drifting? Like, if the calendar says the equinox should be on Monday, but in fact it's actually technically more like Tuesday, would you notice? What if it was technically on Wednesday?<p>If the rate of drift was like 5 days per year, then sure, people'd probably notice in a year or two — three tops, right? But how fast <i>would</i> the drift be? It's a question about how much people can detect small changes in daylight <i>and</i> how big the change actually is.<p>I also observe that we put up with tons of drift in our months: the new moon is hardly ever on the first of the month! And that's really easy to detect (within a day or two). So maybe people would notice a drift relative to the seasonal cycle and just not mind, the way we don't mind a drift relative to the lunar cycle.</p>
]]></description><pubDate>Tue, 19 May 2026 02:32:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=48188551</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48188551</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48188551</guid></item><item><title><![CDATA[New comment by quuxplusone in "Math Jokes in Alice in Wonderland"]]></title><description><![CDATA[
<p>To paraphrase Tom Lehrer: Base 18 is just like base 20... if you're missing two toes!<p>At least that mathematical interpretation does hold up logically all the way to the punch line (even if the interpretation wasn't obviously intended by Carroll). The following section on the Tea Party is just nonsensical slop.</p>
]]></description><pubDate>Mon, 18 May 2026 16:11:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=48181707</link><dc:creator>quuxplusone</dc:creator><comments>https://news.ycombinator.com/item?id=48181707</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48181707</guid></item></channel></rss>