<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: teo_zero</title><link>https://news.ycombinator.com/user?id=teo_zero</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 08 Nov 2026 19:08:21 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=teo_zero" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by teo_zero in "Making any integer with four 2s (2025)"]]></title><description><![CDATA[
<p>Never understood why 7 is considered difficult...<p>7 = ⌈ 2.2² + 2 ⌉</p>
]]></description><pubDate>Sat, 07 Nov 2026 23:18:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=50408980</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50408980</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50408980</guid></item><item><title><![CDATA[New comment by teo_zero in "Notes on San Marino"]]></title><description><![CDATA[
<p>> In over 50 years not a single parliamentary republic has turned authoritarian<p>What about Turkey? (I consider it among the parliamentary republics as it was so until 2017, when the authoritarian shift was already ongoing. In other words, the sequence has been: parliamentary, then turned authoritarian, then changed to presidential.)</p>
]]></description><pubDate>Sat, 07 Nov 2026 22:55:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=50408825</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50408825</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50408825</guid></item><item><title><![CDATA[New comment by teo_zero in "The lost malloc()"]]></title><description><![CDATA[
<p>So you don't <i>know</i> it: you must <i>calculate</i> it, via an expensive strlen().</p>
]]></description><pubDate>Thu, 05 Nov 2026 06:02:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=50375745</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50375745</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50375745</guid></item><item><title><![CDATA[New comment by teo_zero in "The lost malloc()"]]></title><description><![CDATA[
<p>> I can't think of a single time where you DON'T know what `count` is<p>A string created by strdup().</p>
]]></description><pubDate>Thu, 05 Nov 2026 00:32:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=50373409</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50373409</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50373409</guid></item><item><title><![CDATA[New comment by teo_zero in "Copper – A minimal low-level programming language with OOP and generics"]]></title><description><![CDATA[
<p>> Import functions is done the same way [...]
> May be the doc is outdated.<p>Same for function types? The docs still list the syntax with "->":<p><pre><code>  & (Type) -> (RetType)</code></pre></p>
]]></description><pubDate>Tue, 03 Nov 2026 06:41:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=50348816</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50348816</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50348816</guid></item><item><title><![CDATA[New comment by teo_zero in "Anthropic's internal AI use, at retail prices, now exceeds its employee pay"]]></title><description><![CDATA[
<p>So, new development in AI is contributed by AI more than by humans. Isn't this the exact definition of <i>singularity</i>?</p>
]]></description><pubDate>Mon, 02 Nov 2026 22:30:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=50344915</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50344915</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50344915</guid></item><item><title><![CDATA[New comment by teo_zero in "Copper – A minimal low-level programming language with OOP and generics"]]></title><description><![CDATA[
<p>I think it's the opposite of & in C++, that is T! is an object, while T is a reference to an object.</p>
]]></description><pubDate>Mon, 02 Nov 2026 06:46:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=50333819</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50333819</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50333819</guid></item><item><title><![CDATA[New comment by teo_zero in "Copper – A minimal low-level programming language with OOP and generics"]]></title><description><![CDATA[
<p>> Is it using reference passing also for primitives like integers?<p>That's what I assumed, but honestly I might have misunderstood the docs. This passage is not very clear:<p>> Copper manipulates only references to objects. Simple data types such as integers must be seen as references to stateless objects (i.e. objects that have no state in memory).</p>
]]></description><pubDate>Mon, 02 Nov 2026 06:40:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=50333779</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50333779</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50333779</guid></item><item><title><![CDATA[New comment by teo_zero in "Copper – A minimal low-level programming language with OOP and generics"]]></title><description><![CDATA[
<p>I'd like to come up with some constructive comments, but I find everything so inconsistent and alien to me...<p>For example, variable declarations use the pattern <colon> <type>, as in<p><pre><code>  var a: Int32
</code></pre>
But literals follow the opposite syntax, as in<p><pre><code>  a = Int32: 42
</code></pre>
The return type of a function is introduced by : in func definitions, but by -> in imported func declarations:<p><pre><code>  func foo(a:Int):Int
  import func bar(a:Int) -> (Int)
</code></pre>
Other construct that I find far from my habits:<p><pre><code>  var w, h, d = 640, 480, 2
</code></pre>
instead of the more obvious (for me):<p><pre><code>  var w=640, h=480, d=2
</code></pre>
Arguments are passed by ref, not by val. Good luck with recursion!</p>
]]></description><pubDate>Sun, 01 Nov 2026 23:55:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=50331231</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50331231</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50331231</guid></item><item><title><![CDATA[New comment by teo_zero in "The Best Monopoly Strategy, Tested on 300M Games [video]"]]></title><description><![CDATA[
<p>You seem to reason in terms of trying at all costs to block the other players, not to maximize your gain. I agree the ultimate goal is to do better than all the others, but the tactics to get there may involve temporarily favoring other players in win-win exchanges to grow quicker, or to block a third player already far ahead, etc.</p>
]]></description><pubDate>Sat, 24 Oct 2026 10:12:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=50219780</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50219780</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50219780</guid></item><item><title><![CDATA[New comment by teo_zero in "C vs. C#: racing VLC's Gaussian blur"]]></title><description><![CDATA[
<p>Nice article!<p>What surprises me is that the original VLC filter does not use SIMD. Sometimes I wonder why I spent my money on a "modern" CPU with a lot of new features that stay completely ignored by most software I run every day.</p>
]]></description><pubDate>Sat, 24 Oct 2026 05:59:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=50218669</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50218669</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50218669</guid></item><item><title><![CDATA[New comment by teo_zero in "Putting Linux on my RTX Spark laptop because I don't have a Microsoft account"]]></title><description><![CDATA[
<p>> you don't even mention the existence of Apple silicon at all?<p>Given the reasons she lists for not wanting Windows, I can't imagine her entering Apple's closed garden.</p>
]]></description><pubDate>Tue, 20 Oct 2026 05:52:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=50161857</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50161857</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50161857</guid></item><item><title><![CDATA[New comment by teo_zero in "Putting Linux on my RTX Spark laptop because I don't have a Microsoft account"]]></title><description><![CDATA[
<p>To be fair, TFA lists more reasons to avoid Windows:<p>> Mine include the privacy concessions during setup, the years spent waiting for Microsoft to let people put the taskbar on the side of the screen again, and the advertising.<p>Of course you don't have to agree on all of them, but please don't assume everyone acts only because they can't find a tutorial on the net!</p>
]]></description><pubDate>Tue, 20 Oct 2026 05:44:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=50161803</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50161803</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50161803</guid></item><item><title><![CDATA[New comment by teo_zero in "Europe EV sales rose 70.3% in September, 32.6% of market share"]]></title><description><![CDATA[
<p>> Cheaper, faster, smoother, quieter, wake up every day to a full "tank", less things to go wrong<p>I agree to everything except waking up every day to a full "tank". That's only if you have your own house. If not, you'll depend on public chargers, so you'll buy "fuel" at premium prices, possibly higher than petrol, and you'll have to move your car at the end of the recharge in the middle of the night to avoid the parking fee.</p>
]]></description><pubDate>Mon, 19 Oct 2026 19:53:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=50157215</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50157215</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50157215</guid></item><item><title><![CDATA[New comment by teo_zero in "Fun Extending the C Preprocessor"]]></title><description><![CDATA[
<p>Doing non-trivial <i>anything</i> you slow down compilation, make debugging harder and increase fragility and complexity. Sometimes that's a mistake, sometimes not.<p>Getting rid of something because someone sometimes abuses it, is short-sighted.</p>
]]></description><pubDate>Sun, 18 Oct 2026 13:20:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=50140868</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50140868</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50140868</guid></item><item><title><![CDATA[New comment by teo_zero in "Making chicken transparent using Dorito dust"]]></title><description><![CDATA[
<p>I'm sure this research has some higher motivations behind, but I can't help foreseeing an ignobel coming soon!</p>
]]></description><pubDate>Sun, 18 Oct 2026 08:12:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=50139023</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50139023</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50139023</guid></item><item><title><![CDATA[New comment by teo_zero in "Fun Extending the C Preprocessor"]]></title><description><![CDATA[
<p>There are a couple of constructs that you end up re-creating as soon as you need non-trivial preprocessing.<p>One of those is the two-stage CAT, another one is the NARG the article talks about.<p>__COUNTER__ is going to be added to C29, the next version of the standard, maybe there's hope for __VA_COUNT__ and __CAT__ too!</p>
]]></description><pubDate>Sun, 18 Oct 2026 07:08:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=50138651</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50138651</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50138651</guid></item><item><title><![CDATA[New comment by teo_zero in "Arena Allocators in C"]]></title><description><![CDATA[
<p>> unless you assume something not-strictly-portable about `(uintptr_t)p`<p>What's not strictly portable about it?<p><pre><code>  padding = -(uintptr_t)p & (align - 1)
</code></pre>
The only assumption here is that align is a power of 2, which is guaranteed if it's the result of an alignof().</p>
]]></description><pubDate>Wed, 14 Oct 2026 21:05:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=50095254</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50095254</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50095254</guid></item><item><title><![CDATA[New comment by teo_zero in "Arena Allocators in C"]]></title><description><![CDATA[
<p>Please be aware that pointer arithmetic is not defined on void * pointers, although many compilers allow it. You had better use char * for "data".<p>Also, your code is prone to overflow when you add data, used, alignment and size.<p>And finally, the realloc function could be reworked to do nothing if new_size is <= old_size.</p>
]]></description><pubDate>Mon, 12 Oct 2026 18:06:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=50060347</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50060347</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50060347</guid></item><item><title><![CDATA[New comment by teo_zero in "Vectorized CLZ and CTZ"]]></title><description><![CDATA[
<p>To be fair, the article contains 3 methods. The first one is original, the second one is the same algorithm you linked, and the third one is an evolution of it.</p>
]]></description><pubDate>Mon, 12 Oct 2026 05:43:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=50051806</link><dc:creator>teo_zero</dc:creator><comments>https://news.ycombinator.com/item?id=50051806</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50051806</guid></item></channel></rss>