<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: newpavlov</title><link>https://news.ycombinator.com/user?id=newpavlov</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 13 Jun 2026 14:06:55 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=newpavlov" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by newpavlov in "Ear Training Practice Exercises"]]></title><description><![CDATA[
<p>>There is no "objective" foundation to music.<p>Well, there is a number of "objective" factors which play a significant role. For example, see: <a href="https://www.youtube.com/watch?v=tCsl6ZcY9ag" rel="nofollow">https://www.youtube.com/watch?v=tCsl6ZcY9ag</a></p>
]]></description><pubDate>Thu, 11 Jun 2026 19:56:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=48495606</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=48495606</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48495606</guid></item><item><title><![CDATA[New comment by newpavlov in "The foundations of a provably secure operating system (PSOS) (1979) [pdf]"]]></title><description><![CDATA[
<p>>Its capabilities all the way down.<p>IIUC one problem with such layering of capability processing is that each passed layer results in a context switch (i.e. switch of memory mappings, thrashing of caches, etc.) and its on top of the cost of passing through the kernel. In other words, you may need to pay cost of N syscalls for one multi-layered capability-based operation.</p>
]]></description><pubDate>Mon, 18 May 2026 14:55:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=48180771</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=48180771</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48180771</guid></item><item><title><![CDATA[New comment by newpavlov in "Amazon to acquire Globalstar and expand Amazon Leo satellite network"]]></title><description><![CDATA[
<p>No, it's not. Launch windows [0] are about relative position of orbital bodies which enable use of more efficient transfer orbits.<p>[0]: <a href="https://en.wikipedia.org/wiki/Launch_window" rel="nofollow">https://en.wikipedia.org/wiki/Launch_window</a></p>
]]></description><pubDate>Wed, 15 Apr 2026 13:25:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=47778662</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47778662</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47778662</guid></item><item><title><![CDATA[New comment by newpavlov in "Amazon to acquire Globalstar and expand Amazon Leo satellite network"]]></title><description><![CDATA[
<p>>Are we going to run out of space?<p>In a certain sense, we do. Pumping thousands satellites to LEO increases probability of triggering the Kessler syndrome. Luckily, LEO orbits are also self-cleaning on reasonable time scales (decades), so I think that some day we will trigger it (potentially, with some "help" from anti-satellite weapons) after which some kind of international regulation will be introduced to prevent repeating it in future.</p>
]]></description><pubDate>Wed, 15 Apr 2026 12:29:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=47778111</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47778111</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47778111</guid></item><item><title><![CDATA[New comment by newpavlov in "Big-Endian Testing with QEMU"]]></title><description><![CDATA[
<p>For Rust we have Loom [0], but do not expect for it to work on your whole application.<p>[0]: <a href="https://github.com/tokio-rs/loom" rel="nofollow">https://github.com/tokio-rs/loom</a></p>
]]></description><pubDate>Fri, 03 Apr 2026 16:38:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=47628869</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47628869</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47628869</guid></item><item><title><![CDATA[New comment by newpavlov in "United States Code (federal laws) in Git"]]></title><description><![CDATA[
<p>Isn't it just a lawmakers' version of diff? :) You just can't conveniently apply it automatically to compile the resulting text.<p>>Why the hell you not just rewrite the old law and bump the revision?<p>Because it's aimed at lawyers and judges who have to be up-to-date with all changes and its easier for them to remember "section 123 was amended in 2026", than to recall a whole new revision and mentally compute the difference.<p>It's also why you often can see skipped items (e.g. 1, 2, 4, 8, 9, 10). Because humans often think in terms of "<..> code, section 123", not "<..> code, revision 24, section 123, which was section 130 in revision 20", so when you remove a part, it's more efficient to leave an empty space and to not reuse it later.</p>
]]></description><pubDate>Fri, 03 Apr 2026 14:10:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=47626844</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47626844</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47626844</guid></item><item><title><![CDATA[New comment by newpavlov in "Safeguarding cryptocurrency by disclosing quantum vulnerabilities responsibly"]]></title><description><![CDATA[
<p>>it requires creating logical qubits with error rates that we are only now seeing companies report<p>And yet 21 was not factored on a real hardware.<p>>There is linear engineering progress for getting from 32 bits to 256 bits being factored is my claim.<p>IMO it's a very bold claim until linear progress is demonstrated between 8, 16, and 32 bits. Not in theoretical papers. On a real hardware. With honest experiments using arbitrary integers.<p>It's easy to claim "QC will repeat Moore's law!" especially when your salary depends on it, but the practical evidence is quite lacking at the moment.</p>
]]></description><pubDate>Tue, 31 Mar 2026 19:04:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=47591966</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47591966</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47591966</guid></item><item><title><![CDATA[New comment by newpavlov in "Safeguarding cryptocurrency by disclosing quantum vulnerabilities responsibly"]]></title><description><![CDATA[
<p>>The underlying scaling needed to go to 32 bit requires only linear progress to get to 256<p>Nope. Firstly, for RSA you need to scale from 32 to 4096. Secondly, Shor requires N^2*log(N) quantum gates where N is number of bits in the integer, so the scaling is superquadratic. And it's very much an open question whether QEC protocols will continue to work with the same efficiency on the required scales.</p>
]]></description><pubDate>Tue, 31 Mar 2026 18:49:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=47591757</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47591757</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47591757</guid></item><item><title><![CDATA[New comment by newpavlov in "Securing Elliptic Curve Cryptocurrencies Against Quantum Vulnerabilities [pdf]"]]></title><description><![CDATA[
<p>Dup? <a href="https://news.ycombinator.com/item?id=47582418">https://news.ycombinator.com/item?id=47582418</a></p>
]]></description><pubDate>Tue, 31 Mar 2026 18:39:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=47591647</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47591647</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47591647</guid></item><item><title><![CDATA[New comment by newpavlov in "Safeguarding cryptocurrency by disclosing quantum vulnerabilities responsibly"]]></title><description><![CDATA[
<p>Have they factored 21 yet? [0] IMO most of us can ignore such pieces until a practical factorization of arbitrary 32 bit integers is demonstrated on a QC. And even after this "easy" milestone is achieved, I think it will be at least a decade until QC will be a practical cryptographic threat. And it's generously assuming that a Moore-like scaling is possible for QC.<p>[0]: <a href="https://algassert.com/post/2500" rel="nofollow">https://algassert.com/post/2500</a></p>
]]></description><pubDate>Tue, 31 Mar 2026 07:01:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=47583719</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47583719</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47583719</guid></item><item><title><![CDATA[New comment by newpavlov in "RISC-V Is Sloooow"]]></title><description><![CDATA[
<p>>1 might be ok but introduces a bunch of opcode space waste.<p>I wouldn't call it "waste". Moreover, it's fine for misaligned instructions to use a wider encoding or be less rich than their aligned counterparts. For example, they may not have the immediate offset or have a shorter one. One fun potential possibility is to encode the misaligned variant into aligned instructions using the immediate offset with all bits set to one, as a side effect it also would make the offset fully symmetric.</p>
]]></description><pubDate>Wed, 11 Mar 2026 15:28:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=47336880</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47336880</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47336880</guid></item><item><title><![CDATA[New comment by newpavlov in "RISC-V Is Sloooow"]]></title><description><![CDATA[
<p>I am not saying that RISC-V should mandate performance. If anything, we wouldn't had the problem with Zicclsm if they did not bother with the stupid performance note.<p>I would be fine with any of the following 3 approaches:<p>1) Mandate that store/loads do not support misaligned pointers and introduce separate misaligned instructions (good for correctness, so its my personal preference).<p>2) Mandate that store/loads always support misaligned pointers.<p>3) Mandate that store/loads do not support misaligned pointers unless Zicclsm/Oilsm/whatever is available.<p>If hardware wants to implement a slow handling of misaligned pointers for some reason, it's squarely responsibility of the hardware's vendor. And everyone would know whom to blame for poor performance on some workloads.<p>We are effectively going to end up with 3, but many years later and with a lot of additional unnecessary mess associated with it. Arguably, this issue should've been long sorted out in the age of ratification of the I extension.</p>
]]></description><pubDate>Wed, 11 Mar 2026 14:07:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=47335752</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47335752</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47335752</guid></item><item><title><![CDATA[New comment by newpavlov in "RISC-V Is Sloooow"]]></title><description><![CDATA[
<p>>So just use misaligned loads if Zicclsm is supported.<p>LLVM and GCC developers clearly disagree with you. In other words, re-iterating the previously raised point: Zicclsm is effectively useless and we have to wait decades for hypothetical Oilsm.<p>Most programmers will not know that the misaligned issue even exists, even less about options like -mno-strict-align. They just will compile their project with default settings and blame RISC-V for being slow.<p>RISC-V could've easily avoided all this mess by properly mandating misaligned pointer handling as part of the I extension.</p>
]]></description><pubDate>Wed, 11 Mar 2026 10:47:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=47333928</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47333928</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47333928</guid></item><item><title><![CDATA[New comment by newpavlov in "RISC-V Is Sloooow"]]></title><description><![CDATA[
<p>>Multiply and divide<p>And where it actually mattered they did not introduce a separate extension. Integer division is significantly more complex than multiplication, so it may make sense for low-end microcontrollers to implement in hardware only the latter.</p>
]]></description><pubDate>Wed, 11 Mar 2026 10:20:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=47333779</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47333779</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47333779</guid></item><item><title><![CDATA[New comment by newpavlov in "RISC-V Is Sloooow"]]></title><description><![CDATA[
<p>>As for `seed`, if you're running on a microcontroller you can just look up the data sheet to see if it's seed entropy is sufficient.<p>It's a terrible attitude to have towards programmers, but looking at misaligned ops, I guess we can see a pattern from RISC-V authors here.<p>Most programmers do not target a concrete microcontroller and develop every line of code from scratch. They either develop portable libraries (e.g. <a href="https://docs.rs/getrandom" rel="nofollow">https://docs.rs/getrandom</a>) or build their projects using those libraries.<p>The whole <i>raison d'être</i> of an ISA is to provide a <i>portable</i> contract between hardware vendors and programmers . RISC-V authors shirk this responsibility with "just look at your micro specs, lol" attitude.</p>
]]></description><pubDate>Wed, 11 Mar 2026 10:13:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=47333725</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47333725</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47333725</guid></item><item><title><![CDATA[New comment by newpavlov in "RISC-V Is Sloooow"]]></title><description><![CDATA[
<p>>Misaligned loads and stores are Zicclsm<p>Nope. See <a href="https://github.com/llvm/llvm-project/issues/110454" rel="nofollow">https://github.com/llvm/llvm-project/issues/110454</a> which was linked in the first issue. The spec authors have managed to made a mess even here.<p>Now they want to introduce yet another (sic!) extension Oilsm... It <i>maaaaaay</i> become part of RVA30, so in the best case scenario it will be decades before we will be able to rely on it widely (especially considering that RVA23 is likely to become heavily entrenched as "the default").<p>IMO the spec authors should've mandated that the base load/store instructions work only with aligned pointers and introduced misaligned instructions in a separate early extension. (After all, passing a misaligned pointer where your code does not expect it is a correctness issue.) But I would've been fine as well if they mandated that misaligned pointers should be always accepted. Instead we have to deal the terrible middle ground.<p>>atomic memory operations are made mandatory in Ziccamoa<p>In other words, forget about potential performance advantages of load-link/store-conditional instructions. `compare_exchange` and `compare_exchange_weak` will always compile into the same instructions.<p>And I guess you are fine with the page size part. I know there are huge-page-like proposals, but they do not resolve the fundamental issue.<p>I have other minor performance-related nits such `seed` CSR being allowed to produce poor quality entropy which means that we have bring a whole CSPRNG if we want to generate a cryptographic key or nonce on a low-powered micro-controller.<p>By no means I consider myself a RISC-V expert, if anything my familiarity with the ISA as a systems language programmer is quite shallow, but the number of accumulated disappointments even from such shallow familiarity has cooled my enthusiasm for RISC-V quite significantly.</p>
]]></description><pubDate>Tue, 10 Mar 2026 23:22:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=47330046</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47330046</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47330046</guid></item><item><title><![CDATA[New comment by newpavlov in "RISC-V Is Sloooow"]]></title><description><![CDATA[
<p>In some cases RISC-V ISA spec is definitely the one to blame:<p>1) <a href="https://github.com/llvm/llvm-project/issues/150263" rel="nofollow">https://github.com/llvm/llvm-project/issues/150263</a><p>2) <a href="https://github.com/llvm/llvm-project/issues/141488" rel="nofollow">https://github.com/llvm/llvm-project/issues/141488</a><p>Another example is hard-coded 4 KiB page size which effectively kneecaps ISA when compared against ARM.</p>
]]></description><pubDate>Tue, 10 Mar 2026 21:22:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=47328930</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47328930</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47328930</guid></item><item><title><![CDATA[Microscope super-resolution with an LED array and Fourier Ptychography [video]]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.youtube.com/watch?v=9KJLWwbs_cQ">https://www.youtube.com/watch?v=9KJLWwbs_cQ</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47040577">https://news.ycombinator.com/item?id=47040577</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 16 Feb 2026 21:29:02 +0000</pubDate><link>https://www.youtube.com/watch?v=9KJLWwbs_cQ</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=47040577</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47040577</guid></item><item><title><![CDATA[New comment by newpavlov in "Both GCC and Clang generate strange/inefficient code"]]></title><description><![CDATA[
<p>Compilers also like to unnecessarily copy data to stack: <a href="https://github.com/llvm/llvm-project/issues/53348" rel="nofollow">https://github.com/llvm/llvm-project/issues/53348</a> Which can be particularly annoying in cryptographic code where you want to minimize number of copies of sensitive data.</p>
]]></description><pubDate>Wed, 11 Feb 2026 13:59:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=46975023</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=46975023</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46975023</guid></item><item><title><![CDATA[New comment by newpavlov in "MTOTP: Wouldn't it be nice if you were the 2FA device?"]]></title><description><![CDATA[
<p>>The obvious next step is to do all the math in client-side code and just have the user enter the secret<p><a href="https://en.wikipedia.org/wiki/Password-authenticated_key_agreement" rel="nofollow">https://en.wikipedia.org/wiki/Password-authenticated_key_agr...</a></p>
]]></description><pubDate>Mon, 19 Jan 2026 10:28:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=46677286</link><dc:creator>newpavlov</dc:creator><comments>https://news.ycombinator.com/item?id=46677286</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46677286</guid></item></channel></rss>