<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: 0x69420</title><link>https://news.ycombinator.com/user?id=0x69420</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 07 Oct 2026 03:58:31 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=0x69420" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by 0x69420 in "Gleam doesn't compile to Erlang source anymore"]]></title><description><![CDATA[
<p>to those curious, erlang abstract form[1] is the AST representation used by the erlang compiler/etc. per [1], you can see that it's canonically made of erlang terms, and you have easy access to routines for manipulating this representation from the standard library; it's really comfy when you need it! it's also the target elixir compiles down to, and the representation manipulated by parse transforms, which in base erlang are the way syntactic sugar (notably qlc[2] and some of the more cutesy pattern matches in merl[3] (which, in turn, manipulates the very same representation to do its job. very meta!)) is done.<p>most BEAM languages actually settle on erlang abstract format. you'd think core erlang would be more common since it feels more like a traditional functional IR, but basically only LFE does this, because it's a moving target without any particular stability guarantees from release to release.<p>1: <a href="https://www.erlang.org/doc/apps/stdlib/erl_parse.html#t:abstract_form/0" rel="nofollow">https://www.erlang.org/doc/apps/stdlib/erl_parse.html#t:abst...</a><p>2: <a href="https://www.erlang.org/doc/apps/stdlib/qlc.html#q/2" rel="nofollow">https://www.erlang.org/doc/apps/stdlib/qlc.html#q/2</a><p>3: <a href="https://www.erlang.org/doc/apps/syntax_tools/merl.html" rel="nofollow">https://www.erlang.org/doc/apps/syntax_tools/merl.html</a></p>
]]></description><pubDate>Tue, 06 Oct 2026 11:37:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=49977014</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=49977014</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49977014</guid></item><item><title><![CDATA[New comment by 0x69420 in "C++26: Trivial infinite loops are no longer undefined behaviour"]]></title><description><![CDATA[
<p>> The mentioned proposal was also accepted as a defect report, so implementations may apply the fix to earlier C++ modes as well. That is why you might not be able to reproduce the old behaviour on a recent compiler even in C++20 mode.<p>brutal. hope major compiler vendors throw in a flag that can bring some sanity to this</p>
]]></description><pubDate>Fri, 18 Sep 2026 18:31:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=49758312</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=49758312</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49758312</guid></item><item><title><![CDATA[New comment by 0x69420 in "Bend – A language that blocks AI mistakes via proof, on CPU and GPU"]]></title><description><![CDATA[
<p>victor has courted a very llm-enjoyer audience and such people are famously prone to hype (which is kinda brutal in its own way cause the language itself is cool and i dont wanna make it sound like im taking away from that). but yeah, fan activity as you put it easily accounts for the missing order of magnitude, if you like.</p>
]]></description><pubDate>Fri, 18 Sep 2026 02:17:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=49749482</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=49749482</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49749482</guid></item><item><title><![CDATA[New comment by 0x69420 in "Bend – a language that blocks AI mistakes via proof and runs on GPUs"]]></title><description><![CDATA[
<p>victor's legit and people have been excited about his work for years; squashing the history was just a bit of an optics oopsie on his part. the star to fork ratio makes perfect sense for something like bend.<p>- fstar: 3k stars, 267 forks<p>- coalton: 1.8k stars, 111 forks<p>- carp: 6k stars, 267 forks<p>- c3: 5.8k stars, 400 forks<p>when something is novel/young (not having had time to grow large and accumulate issues in the vein of "1 doc page out of 1000 is worded incorrectly") and (as of yet) niche (innate barrier to entry for contribution because you have to learn from square 1 what all the moving parts look like), you don't see the same activity patterns on public source hosts as with a general-purpose language.</p>
]]></description><pubDate>Fri, 18 Sep 2026 01:40:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=49749238</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=49749238</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49749238</guid></item><item><title><![CDATA[New comment by 0x69420 in "PS5 Linux lead quits: "a bunch of noobs using LLMs" that "they don't understand""]]></title><description><![CDATA[
<p>now imagine how many other devs and maintainers are contemplating this but just haven't been pushed to their personal breaking point yet. or take note of how many, when asked about the spam problem, just nervously go "yeah it's kinda rough haha...". or how many will vent about it on their twitter-like of choice with increasing frequency.<p>remember hacktoberfest 2020? that's just all public-facing source 365 days a year now, except instead of "updated README.md" it's some vaguely-plausible fix... then you read the PR body and someone couldn't even be bothered to, or, just as likely <i>couldn't</i> explain it themselves. and that sort of sinking dread sets in.</p>
]]></description><pubDate>Wed, 16 Sep 2026 15:05:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=49728179</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=49728179</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49728179</guid></item><item><title><![CDATA[New comment by 0x69420 in "Adversarial Fashion Makes a Statement on AI Panopticon"]]></title><description><![CDATA[
<p>just like cvdazzle before it, this is bound to do bugger all one model into the future, and in the meantime you'd still really want to stick a pebble in one shoe and wear platforms or something to mess with gait analysis<p>you should read this less as convincingly adversarial fashion and more fashion inspired by the vague concept of computer-vision-aided surveillance, which, mind you, is still pretty rad, just more vogue material, less ieee spectrum material</p>
]]></description><pubDate>Mon, 14 Sep 2026 19:59:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=49703060</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=49703060</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49703060</guid></item><item><title><![CDATA[New comment by 0x69420 in "Fuck it, make it anyway"]]></title><description><![CDATA[
<p>not that it was necessarily the intent, but you laid on the "PS: you have intrinsic value" with the exact same tone and cadence as someone trying to work in a "you are loved/valued" while trying to talk someone off the tenth-floor railing. jesus, it's really bleak out there, huh.</p>
]]></description><pubDate>Sun, 13 Sep 2026 11:19:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=49682682</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=49682682</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49682682</guid></item><item><title><![CDATA[New comment by 0x69420 in "Bespoke: A programming language for people who say please"]]></title><description><![CDATA[
<p>the obvious llm tells make this infinitely less funny than natural-language esolangs from 2 decades ago sorry</p>
]]></description><pubDate>Thu, 10 Sep 2026 05:53:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=49638949</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=49638949</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49638949</guid></item><item><title><![CDATA[New comment by 0x69420 in "“Tweet” and the bird logo apparently enter the public domain"]]></title><description><![CDATA[
<p>"did you see what the president just microblogged"?<p>come now, surely you understand why it would be beneficial to the commons to have a snappy, catchy term that already has purchase in the public imagination be free to use, right?</p>
]]></description><pubDate>Wed, 09 Sep 2026 09:07:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=49623514</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=49623514</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49623514</guid></item><item><title><![CDATA[New comment by 0x69420 in "AI;DR (AI; Didn't Read)"]]></title><description><![CDATA[
<p>but our dwindling attention spans are caused by a deluge of material sapping our energy before we can devote it to something worthwhile. developing a fast and frugal mental filter for insubstantial walls of slop is a new prerequisite for not being so exhausted that you default to saying tl;dr to the real, good stuff.</p>
]]></description><pubDate>Tue, 18 Aug 2026 04:46:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=49341377</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=49341377</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49341377</guid></item><item><title><![CDATA[New comment by 0x69420 in "C/C++ projects packaged for Zig"]]></title><description><![CDATA[
<p><p><pre><code>    2. Fork the upstream project (optionally remove other -- now useless :^) -- build scripts),
</code></pre>
oh god, it's meson wrapdb all over again. my heart goes out to all the library maintainers who'll have zig users go into their issue tracker like "and if you don't want this patch, don't worry, i'll just submit it to allyourcodebase" implicitly threatening upstream with a perpetual drip-feed of issues pertaining to a questionably-maintained fork they don't control.<p><pre><code>    Make / GNUMake / CMake / autoconf / bash scripts / batch scripts / powershell scripts: Zig is a complete build system that works on all supported platforms and can do everything those other tools do.
</code></pre>
this bodes well.<p>i am begging people to please stop doing this genre of "compatibility" initiative.</p>
]]></description><pubDate>Tue, 28 Jul 2026 07:45:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=49080669</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=49080669</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49080669</guid></item><item><title><![CDATA[New comment by 0x69420 in "Keygen.music"]]></title><description><![CDATA[
<p>look at inspect source. the comments like<p><pre><code>    <!-- EXACT setup from working simple-test.html -->

    <!-- Chiptune3 now loaded via Vite build system -->
</code></pre>
are pretty stark llmisms. also the random emojis in front of the duplicate and triplicate "Browse Music" links, the corny tagline in the footer, yeah nah. if this was made by human hands, it could only have been as elaborate satire. bad/inexperienced human code does not look like this.</p>
]]></description><pubDate>Fri, 12 Jun 2026 17:54:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=48507296</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=48507296</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48507296</guid></item><item><title><![CDATA[New comment by 0x69420 in "Shantell Sans (2023)"]]></title><description><![CDATA[
<p>the formality slider (play with it at the google fonts page linked in the article[0]) is genuinely one of the coolest uses of a variable font axis i've seen in recent memory. it feels like we're witnessing the slow and steady vindication of metafont.<p>[0] <a href="https://fonts.google.com/specimen/Shantell+Sans" rel="nofollow">https://fonts.google.com/specimen/Shantell+Sans</a></p>
]]></description><pubDate>Sun, 31 May 2026 01:44:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=48342326</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=48342326</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48342326</guid></item><item><title><![CDATA[New comment by 0x69420 in "Why Gentoo?"]]></title><description><![CDATA[
<p>nixos is already, from a certain perspective, an exotic take on gentoo. take away cache.nixos.org and it becomes a source-based distro. it's not even too out-of-the-question to do traditionally gentoo stuff like globally set -funroll-loops -O3 and rebuild your whole system, but the operational benefit of staying standard is getting to use binary caches since reproducibility lets them substitute transparently for local builds in the standard environment with the standard settings. one thing nixos lacks is an elegant analogue to gentoo USE flags; "tell package A to use optional package B" has like two different conventions in nixpkgs for individual packages, alongside bespoke things like configuring everything to use cuda or not. furthermore, pkgsrc, gentoo prefix, and nix are three of a kind in terms of "third-party package manager on a non-native OS"<p>personally, i used gentoo throughout most of my teenage years, and now use nixos viewing it as a successor, since you can screw around using the thing as a meta-distribution, but roll back when you hose your system.<p>gentoo freebsd existed for a while for funsies but nobody cared and now it's dead, same with gentoo openbsd. each was portage integrated a little more intentionally on top of a respective bsd than just "bung it in /usr/local/bin and call it a day". practically speaking, they were implementations of gnu/k*bsd.<p>nixbsd similarly exists (nix deeply integrated into freebsd), with heroic efforts made to transfer nixos's abstraction over init systems for system-wide configuration; last commit was two months ago so i guess not dead yet?<p>you can run nix on gentoo, or gentoo prefix on nixos with nix-ld turned on if you feel like it<p>void's claim to fame with xbps is a bunch of sandboxing and bind mounts for build environments. nix already has to sandbox just to get off the ground wrt reproducibility.<p>void, gentoo, and nixos all offer some degree of libc freedom. on void it's first-class, on gentoo it nearly is, and on nixos it's here be dragons. libc freedom doesnt really jive with using a bsd as a base; vertical integration is kind of one of the contemporary selling points.<p>so to answer your question, the result would be nixbsd in an alternate timeline where nixpkgs's analogues to USE flags/eselect/profiles are not hot garbage (i say this with love as a user), and void would fail to exert a phenotype.</p>
]]></description><pubDate>Fri, 29 May 2026 03:52:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=48318804</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=48318804</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48318804</guid></item><item><title><![CDATA[New comment by 0x69420 in "Google Hates You"]]></title><description><![CDATA[
<p>the consequentialist "may as well" or "for all intents and purposes" is implicit. of course you can't ascribe literal teleology to something like a megacorp; diffusion of accountability is a defining trait of any sufficiently large organisation. but, "misaligned incentives" and hatred look the same from the sole of the boot. in both cases, you probably want to get your head off the curb before it comes down.</p>
]]></description><pubDate>Thu, 28 May 2026 22:04:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=48316169</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=48316169</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48316169</guid></item><item><title><![CDATA[New comment by 0x69420 in "Curly braces: An evolution of Unix and C"]]></title><description><![CDATA[
<p>hang about, the smalltalk return operator is why objc block syntax uses carets, isn't it? how did that only just click for me?</p>
]]></description><pubDate>Sun, 24 May 2026 18:01:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=48259562</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=48259562</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48259562</guid></item><item><title><![CDATA[New comment by 0x69420 in "GitHub's take on age assurance for developers"]]></title><description><![CDATA[
<p>finding it increasingly difficult to summon any optimism with respect to this stuff. opposing policy, proponents of which can fall back on "think of the children", is an uphill battle with both hands tied behind your back. the way things are going, someone born today, by the time they reach my age, simply won't have been able to get in touch with 90% of interests i value and give my life meaning.<p>back in my time as an (inadvisably) precociously online kid, the only real age barrier was having a credit card, so i had to beg/borrow/steal my way to someone on irc giving me a shell to a vps, and pay some other rando with a steam gift card to buy a domain then transfer it to my registrar account. and like that, i could start developing a presence in whatever online communities i insinuated myself into by acting mature enough nobody gave my age a second thought. physical realities like divorce and school troubles came and went, but moving and shaking online gave me my most steadfast friends and s/o to this day.<p>shift the timeframe a couple decades and i would have instead been gated by an id upload. bleak.</p>
]]></description><pubDate>Wed, 20 May 2026 23:57:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=48216011</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=48216011</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48216011</guid></item><item><title><![CDATA[New comment by 0x69420 in "Inkscape 1.4.4"]]></title><description><![CDATA[
<p>inkscape has had a long and quiet ascent from quintessentially janky foss creative software to genuinely pleasant to use. i still wish it were a little easier to edit the individual portions of deeply nested clip/mask operations, but if you need to crank out some icons, you can use inkscape and not hate your life, which is something i'd have called someone insane for telling me a decade ago.</p>
]]></description><pubDate>Wed, 06 May 2026 20:24:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=48041270</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=48041270</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48041270</guid></item><item><title><![CDATA[New comment by 0x69420 in "Recursive macros in C, demystified (once the ugly crying stops)"]]></title><description><![CDATA[
<p>genuinely remarkable, the altogether perhaps even <i>productive</i> mischief you can get up to, especially with `__VA_OPT__` becoming a proper standard in both C and C++ so you don't have to feel dirty about using it.<p>i recently made use of plenty of ugly tricks in this vein to take a single authoritative table of macro invocations that defined a bunch of pixel formats, and make them graduate from defining bitfield structs to classes with accessors that performed good old fashioned shifts and masks, <i>all without ever specifying the individual bit offsets of channels</i>, just their individual widths, and macro magic did the rest. no templates, no actual c++, could just as feasibly produce pure c bindings down the line by just changing a few names.<p>getting really into this stuff makes you stop thinking of c function-like macros as functions of their arguments as such, but rather unary functions of argument lists, where arity <i>roughly</i> becomes the one notion vaguely akin to typing in the whole enterprise, or at least the one place where the compiler exhibits behaviour resembling that of a type checker. this was especially true considering the entries in the table i wound up with were variadic, terminating in variably many (name, width) <i>parenthesised tuples</i>. and i just... had the means to "uncons" them so to speak. fun stuff.<p>this is worth it, imo, in precisely <i>one</i> context, which is: you want a single source of truth that defines fiddly but formulaic implementations spread across multiple files that must remain coordinated, <i>and</i> this is something you do infrequently enough that you don't consider it worthwhile introducing "real" "big boy" code gen into your build process. mind, you usually do end up having to commit to a little utility header that defines convenient macros (_Ex and such in the article), but hey. c'est la vie. basically x macros (<a href="https://en.wikipedia.org/wiki/X_macro" rel="nofollow">https://en.wikipedia.org/wiki/X_macro</a>) on heart attack quantities of steroids.</p>
]]></description><pubDate>Thu, 06 Nov 2025 12:36:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=45834534</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=45834534</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45834534</guid></item><item><title><![CDATA[New comment by 0x69420 in "Erlang Meets Idris: Cure Programming Language"]]></title><description><![CDATA[
<p>please keep the erlang ecosystem out of the llm griftosphere. jesus christ.</p>
]]></description><pubDate>Thu, 06 Nov 2025 10:00:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=45833418</link><dc:creator>0x69420</dc:creator><comments>https://news.ycombinator.com/item?id=45833418</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45833418</guid></item></channel></rss>