<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: thomasmg</title><link>https://news.ycombinator.com/user?id=thomasmg</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 03 Jul 2026 09:07:22 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=thomasmg" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by thomasmg in "The Radiation Exposure Lie"]]></title><description><![CDATA[
<p>There are studies that show cancer risk is higher near a nuclear plant. The reason is likely that poorer people live near a nuclear plant; it's _probably_ not because of radiation. My point is: Just having nuclear plants nearby lowers the market price of the property. If there _is_ an accident, the market price of many properties drops to zero. That's why no insurance company will insure the full risk of a nuclear accident: the remaining risk is on the population and land owners. (Property owners may get compensated - paied by taxes.)<p>In Switzerland there is now again the idea to build nuclear plants, by some (I'm pretty sure the political party that initiated this gets a lot of money from the nuclear lobby - unfortunately the money flow is intransparent in Switzerland.) A recent study in Switzerland [1] has shown nuclear plant are not competitive with solar, wind, hydro, and batteries, not even taking into account that accidents are not fully insured.<p>[1] <a href="https://www.20min.ch/story/akw-debatte-neue-atomkraftwerke-lohnen-sich-kaum-zeigt-die-eth-103591077" rel="nofollow">https://www.20min.ch/story/akw-debatte-neue-atomkraftwerke-l...</a></p>
]]></description><pubDate>Mon, 29 Jun 2026 19:56:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=48724304</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=48724304</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48724304</guid></item><item><title><![CDATA[New comment by thomasmg in "Swiss parliament lifts ban on new nuclear power plants"]]></title><description><![CDATA[
<p>Solar, wind and hydro are all much cheaper, far safer and more efficient these days.</p>
]]></description><pubDate>Thu, 18 Jun 2026 18:45:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=48589690</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=48589690</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48589690</guid></item><item><title><![CDATA[New comment by thomasmg in "The beauty and simplicity of the good old C-style void* in C++"]]></title><description><![CDATA[
<p>I don't have a strong opinion what is better in this case, but my view is:<p>> document and express intent clearly<p>Arguably, the void* does that as well?<p>> Any seasoned C++ developer seeing this knows what this reinterpret_cast means.<p>Same for void*?<p>> it's a bit more text to read<p>If you have to call it many times, this adds up.<p>> Some might also say it complexifies and uglifies the code<p>I think the point is that it adds security, which the other options don't. And, it doesn't add complexity on the caller, but only at one place: the implementation.<p>>  makes it non-portable on top of that.<p>This can be solved.</p>
]]></description><pubDate>Tue, 09 Jun 2026 11:28:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=48459668</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=48459668</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48459668</guid></item><item><title><![CDATA[New comment by thomasmg in "Profiling.sampling – Statistical Profiler"]]></title><description><![CDATA[
<p>> I choose to use Python because I am productive with it.<p>That, I fully understand. I think many developers are productive in one language: in the one that they know best. Which is probably the one they use most. It might happen that this is is a "fast" language by accident (like Java or Go), or a language like Python. And then there is never enough reason to switch.<p>> "Most engineers would kill for a 5% speedup"<p>I think this is very rare - maybe a heavily used app in Facebook or Google, where 5% could mean a lot of money. But a factor of 10 speedup is much more common (and possible sometimes).<p>> there is an allure to performance optimization due to the fact that it can be so easily quantified.<p>That's true. I also think simplicity is quantifiable, and so my personal hobby is to write something impressive in few lines. Like a chess engine, QR code reader, editor, data compression tool, compiler, in 500 lines. But this is mostly for hobbies I guess. For work, it's mostly about features, and then performance, I guess.</p>
]]></description><pubDate>Tue, 12 May 2026 17:40:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=48111582</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=48111582</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48111582</guid></item><item><title><![CDATA[New comment by thomasmg in "Profiling.sampling – Statistical Profiler"]]></title><description><![CDATA[
<p>I'm not trying to criticize, but Python is known to be much slower than eg. Java or Go etc. So for performance-critcal code, why use Python? I find Python to be very good because it is concise and simple, but I have not used it for production so far.</p>
]]></description><pubDate>Tue, 12 May 2026 14:30:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=48108854</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=48108854</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48108854</guid></item><item><title><![CDATA[New comment by thomasmg in "Show HN: I wrote a flight simulator in my own programming language"]]></title><description><![CDATA[
<p>I understand what you mean; Claude is a tool and does not have feelings, thats clear to me. But how else can I describe what I did? "Wrote to Claude" has the same issue. Posted, typed, inputed?</p>
]]></description><pubDate>Sat, 09 May 2026 20:31:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=48077973</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=48077973</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48077973</guid></item><item><title><![CDATA[New comment by thomasmg in "[dead]"]]></title><description><![CDATA[
<p>Well... actually, it isn't. I'm also writing my own programming language (named "Bau"). I asked Claude to convert a minesweeper game from C to that language. I only gave some example programs in my language and the grammar. This worked on the first try (Claude didn't even have access to the compiler).</p>
]]></description><pubDate>Sat, 09 May 2026 18:45:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=48077207</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=48077207</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48077207</guid></item><item><title><![CDATA[New comment by thomasmg in "Ask HN: We just had an actual UUID v4 collision..."]]></title><description><![CDATA[
<p>It is not quite as rare. I calculated it to be less common than being hit by a meteorite, and added a section about that and the Birthday Paradox to Wikipedia, to the article about UUIDs. It got removed / replaced a few years ago however. (If my source was correct, there was actually a woman hit by a meteorite, but she survived, with a leg injury.)<p>If you do have a UUID collision, chances are extremely high that it's either a software bug, or glitch in the computer. It could be a cosmic ray. Cosmic rays messing with the computer memory or CPU are actually relatively common.</p>
]]></description><pubDate>Fri, 08 May 2026 17:01:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=48065822</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=48065822</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48065822</guid></item><item><title><![CDATA[New comment by thomasmg in "WASM is not quite a stack machine"]]></title><description><![CDATA[
<p>Well there is Google Sheets, Microsoft Office, Figma, and some other heavier web apps.</p>
]]></description><pubDate>Tue, 28 Apr 2026 11:08:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=47932831</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=47932831</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47932831</guid></item><item><title><![CDATA[New comment by thomasmg in "WASM is not quite a stack machine"]]></title><description><![CDATA[
<p>Sure. But it does save you one instruction: "tee", "get" instead of "set", "get", "get".</p>
]]></description><pubDate>Tue, 28 Apr 2026 11:02:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=47932781</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=47932781</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47932781</guid></item><item><title><![CDATA[New comment by thomasmg in "WASM is not quite a stack machine"]]></title><description><![CDATA[
<p>You could use "local.tee". It is kind of is "store" + "duplicate".</p>
]]></description><pubDate>Tue, 28 Apr 2026 10:02:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=47932408</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=47932408</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47932408</guid></item><item><title><![CDATA[New comment by thomasmg in "I Cancelled Claude: Token Issues, Declining Quality, and Poor Support"]]></title><description><![CDATA[
<p>Well that is how it mostly worked until recently... unless if the developer copied and pasted from stackoverflow without understanding much. Which did happen.</p>
]]></description><pubDate>Fri, 24 Apr 2026 18:33:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=47894115</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=47894115</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47894115</guid></item><item><title><![CDATA[New comment by thomasmg in "For the first time in the U.S., renewables generate more power than natural gas"]]></title><description><![CDATA[
<p>I think the main issue with nuclear reactors is the cost, but yes I agree.</p>
]]></description><pubDate>Sat, 18 Apr 2026 15:10:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=47816513</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=47816513</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47816513</guid></item><item><title><![CDATA[New comment by thomasmg in "It's OK to compare floating-points for equality"]]></title><description><![CDATA[
<p>It depends on the use case, but do you consider NaN to be equal to NaN? For an assert macro, I would expect so. Also, your code works differently for very large and very small numbers, eg. 1.0000001, 1.0000002 vs 1e-100, 1.0000002e-100.<p>For my own soft-floating point math library, I expect the value is off by a some percentage, not just off by epsilon. And so I have my own almostSame method [1] which accounts for that and is quite a bit more complex. Actually multiple such methods. But well, that's just my own use case.<p>[1] <a href="https://github.com/thomasmueller/bau-lang/blob/main/src/test/java/org/bau/stdlib/math/SimpleMathTest.java#L187" rel="nofollow">https://github.com/thomasmueller/bau-lang/blob/main/src/test...</a></p>
]]></description><pubDate>Sat, 18 Apr 2026 11:38:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=47815094</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=47815094</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47815094</guid></item><item><title><![CDATA[New comment by thomasmg in "For the first time in the U.S., renewables generate more power than natural gas"]]></title><description><![CDATA[
<p>For the few days without wind, natural gas is cheaper than nuclear. There is also biogas and hydro. Nuclear is not cheap to turn on off. Also, the insurance cost of nuclear power is not accounted for: basically, there is no insurance, and the state (the population) just have to live with the risk.</p>
]]></description><pubDate>Tue, 14 Apr 2026 17:42:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=47768738</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=47768738</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47768738</guid></item><item><title><![CDATA[New comment by thomasmg in "Tofolli gates are all you need"]]></title><description><![CDATA[
<p>So if I understand correctly, you are saying the observer doesn't feel like he is in a superposition (multiple states at once). Sure: I agree that observers never experience being in a superposition.<p>But don't think that necessarily means we are in a Many-Worlds. I rather think that we don't have enough knowledge in this area. Assuming we live in a simulation, an alternative explanation would be, that unlikely branches are not further simulated to save energy. And in this case, superposition is just branch prediction :-)</p>
]]></description><pubDate>Sun, 12 Apr 2026 18:46:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=47743009</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=47743009</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47743009</guid></item><item><title><![CDATA[New comment by thomasmg in "Tofolli gates are all you need"]]></title><description><![CDATA[
<p>(This is way beyond my area of expertise so excuse me that this might be a stupid idea.)<p>I assume the following happens: while a (small) subsystem is in "pure state" (in quantum coherence), no information flows out of this subsystem. Then, when measuring, information flows out and other information flows in, which disturbs the pure state. This collapses of the wave function (quantum decoherence). For all practical purposes, it looks like quantum decoherence is irreversible, but technically this could still be reversible; it's just that the subsystem (that is in coherence) got much, much larger. Sure, for all practical purposes it's then irreversible, but for us most of physics anyway looks irreversible (eg. black holes).</p>
]]></description><pubDate>Sun, 12 Apr 2026 16:45:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=47741772</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=47741772</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47741772</guid></item><item><title><![CDATA[New comment by thomasmg in "Tofolli gates are all you need"]]></title><description><![CDATA[
<p>Why do you think so? The code example shows that you can do RLE (run length encoding) without noise / additional space. I'm pretty sure you can do zip as well. It would just be very hard to implement, but it wouldn't necessarily require that the output contains noise.<p>[1] <a href="https://topps.diku.dk/pirc/?id=janusP" rel="nofollow">https://topps.diku.dk/pirc/?id=janusP</a></p>
]]></description><pubDate>Sun, 12 Apr 2026 14:00:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=47739760</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=47739760</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47739760</guid></item><item><title><![CDATA[New comment by thomasmg in "Tofolli gates are all you need"]]></title><description><![CDATA[
<p>Yes you can do compression, if the text is compressible. The playground [1] has a "run length encoding" example.<p>Maybe you meant sorting. You can implement sorting algorithms, as long as you store the information which entries were swapped. (To "unsort" the entries when running in reverse). So, an array that is already sorted doesn't need much additional information; one that is unsorted will require a lot of "undo" space. I think this is the easiest example to see the relation between reversible computing and thermodynamics: in thermodynamics, to bring "order" to a system requires "unorder" (heat) somewhere else.<p>There are also examples for encryption / decryption, but I find compression and sorting more interesting.<p>[1] <a href="https://topps.diku.dk/pirc/?id=janusP" rel="nofollow">https://topps.diku.dk/pirc/?id=janusP</a></p>
]]></description><pubDate>Sun, 12 Apr 2026 13:11:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=47739222</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=47739222</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47739222</guid></item><item><title><![CDATA[New comment by thomasmg in "Tofolli gates are all you need"]]></title><description><![CDATA[
<p>There is a programming language that is reversible: Janus [1]. You could write a (lossless) data compression algorithm in this language, and if run in reverse this would uncompress. In theory you could do all types of computation, but the "output" (when run forward) would need to contain the old state. With reversible computing, there is no erased information. Landauer's principle links information theory with thermodynamics: putting order to things necessarily produces heat (ordering something locally requires "disorder" somewhere else). That is why  Toffoli gates are so efficient: if the process is inherently reversible, less heat need to be produced. Arguably, heat is not "just" disorder: it is a way to preserve the information in the system. The universe is just one gigantic reversible computation. An so, if we all live in a simulation, maybe the simulation is written in Janus?<p>[1] <a href="https://en.wikipedia.org/wiki/Janus_(time-reversible_computing_programming_language)" rel="nofollow">https://en.wikipedia.org/wiki/Janus_(time-reversible_computi...</a></p>
]]></description><pubDate>Sun, 12 Apr 2026 11:36:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=47738495</link><dc:creator>thomasmg</dc:creator><comments>https://news.ycombinator.com/item?id=47738495</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47738495</guid></item></channel></rss>