frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

XSLT RIP

https://xslt.rip/
229•edent•2h ago•146 comments

Realtime BART Arrival Display

https://filbot.com/real-time-bart-display/
84•Jadrago•3h ago•18 comments

Installing and using HP-UX 9

https://thejpster.org.uk/blog/blog-2025-11-08/
11•TMWNN•1h ago•1 comments

Beets: The music geek's media organizer

https://beets.io/
49•hyperific•3h ago•21 comments

Marble Fountain

https://willmorrison.net/posts/marble-fountain/
697•chris_overseas•17h ago•80 comments

How the UK lost its shipbuilding industry

https://www.construction-physics.com/p/how-the-uk-lost-its-shipbuilding
100•surprisetalk•8h ago•192 comments

Ask HN: What Are You Working On? (Nov 2025)

261•david927•13h ago•737 comments

DEC64: Decimal Floating Point (2020)

https://www.crockford.com/dec64.html
36•vinhnx•1w ago•12 comments

Montana becomes first state to enshrine 'right to compute' into law

https://montananewsroom.com/montana-becomes-first-state-to-enshrine-right-to-compute-into-law/
443•bilsbie•21h ago•237 comments

Building a 2.5kWh battery from disposable vapes to power my workshop [video]

https://www.youtube.com/watch?v=dy-wFixuRVU
216•rsanek•6d ago•109 comments

Drilling down on Uncle Sam's proposed TP-Link ban

https://krebsonsecurity.com/2025/11/drilling-down-on-uncle-sams-proposed-tp-link-ban/
195•todsacerdoti•16h ago•233 comments

Itiner-e: the Google Maps of Roman Roads

https://itiner-e.org/
103•helsinkiandrew•1d ago•22 comments

EU takes aim at plastic pellets to prevent their nightmare cleanup

https://www.yahoo.com/news/articles/eu-takes-aim-plastic-pellets-030314496.html
40•PaulHoule•1h ago•14 comments

BGP zombies and excessive path hunting

https://blog.cloudflare.com/going-bgp-zombie-hunting/
7•emot•1w ago•1 comments

JVM exceptions are weird: a decompiler perspective

https://purplesyringa.moe/blog/jvm-exceptions-are-weird-a-decompiler-perspective/
128•vrnvu•6d ago•34 comments

A brief history of Time Machine (2024)

https://eclecticlight.co/2024/09/07/a-brief-history-of-time-machine/
20•firloop•6d ago•10 comments

The Manuscripts of Edsger W. Dijkstra

https://www.cs.utexas.edu/~EWD/
228•nathan-barry•18h ago•89 comments

Today I Learned: Binfmt_misc

https://dfir.ch/posts/today_i_learned_binfmt_misc/
58•malmoeb•6d ago•18 comments

Lee Felsenstein

https://en.wikipedia.org/wiki/Lee_Felsenstein
18•nickt•6d ago•1 comments

The Linux Kernel Looks to "Bite the Bullet" in Enabling Microsoft C Extensions

https://www.phoronix.com/news/Linux-6.19-Patch-Would-MS-Ext
31•keyle•2h ago•10 comments

The Principles of Diffusion Models

https://arxiv.org/abs/2510.21890
186•Anon84•18h ago•18 comments

Bumble Berry Pi – A Cheap DIY Raspberry Pi Handheld Cyberdeck

https://github.com/samcervantes/bumble-berry-pi
150•MakerSam•17h ago•30 comments

Understanding Financial Functions in Excel

https://ciju.in/writings/understanding-financial-functions-excel-sheets
34•ciju•5d ago•3 comments

Show HN: DroidDock – A sleek macOS app for browsing Android device files via ADB

https://rajivm1991.github.io/DroidDock/
63•rajivm1991•9h ago•31 comments

The Sega Master System

https://bumbershootsoft.wordpress.com/2025/11/08/the-sega-master-system/
92•ibobev•15h ago•28 comments

Sued by Nintendo

https://www.suedbynintendo.com/
188•notepad0x90•10h ago•51 comments

Reviving Classic Unix Games: A 20-Year Journey Through Software Archaeology

https://vejeta.com/reviving-classic-unix-games-a-20-year-journey-through-software-archaeology/
156•mwheeler•21h ago•66 comments

Email verification protocol

https://github.com/WICG/email-verification-protocol
178•sgoto•1w ago•124 comments

Microsoft's lack of quality control is out of control

https://www.theregister.com/2025/11/08/microsoft_lacks_quality_control/
13•pjmlp•1h ago•3 comments

What If Java Had Symmetric Converter Methods on Collection?

https://donraab.medium.com/what-if-java-had-symmetric-converter-methods-on-collection-cbb824885c3f
6•xkriva11•6d ago•0 comments
Open in hackernews

The Linux Kernel Looks to "Bite the Bullet" in Enabling Microsoft C Extensions

https://www.phoronix.com/news/Linux-6.19-Patch-Would-MS-Ext
30•keyle•2h ago

Comments

unwind•1h ago
Huh. I thought the article was vague on what exactly these extensions permit, so I'd thought I'd look up the GNU documentation. Surprisingly, it [1] was rather vague too!

The only concrete example is:

Accept some non-standard constructs used in Microsoft header files.

In C++ code, this allows member names in structures to be similar to previous types declarations.

    typedef int UOW;
    struct ABC {
      UOW UOW;
    };

[1]: https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html#in...
messe•1h ago
The important one is "Unnamed Structure and Union Fields"[1], in particular unnamed structs and union fields without a tag.

ISO C11 and onward allows for this:

    struct {
      int a;
      union {
        int b;
        float c;
      };
      int d;
    } foo;
In the above, you can access b as foo.b. In ISO C11, the inner struct/union must be defined without a tag. Meaning that this is invalid:

    struct {
      int a;
      union bar {
        int b;
        float c;
      };
      int d;
    } foo;
As is this: union bar { int b; float c; };

    struct {
      int a;
      union bar;
      int d;
    } foo;
-fms-extensions makes both of the above valid. You might be wondering why this is uesful. The most common use is for nicer struct embedding/pseudo-inheritance:

    struct parent {
      int i;
      void *p;
    };

    void parent_do_something(struct parent *p);

    struct child {
      struct parent;
      const char *s;
    };

    struct child *c;
    struct parent *p = (struct child *)c; // valid
    parent_do_something(p);
    c.i++; // valid
[1]: https://gcc.gnu.org/onlinedocs/gcc/Unnamed-Fields.html
creshal•1h ago
Why is this still not standardized?
wahern•28m ago
The original proposal at https://www.open-std.org/jtc1/sc22/wg14/www/docs/n1406.pdf explains why.

> Some implementations have permitted anonymous member-structures and -unions in extended C to contain tags, which allows tricks such as the following.

  struct point { float x, y, z; };
  struct location {
    char *name;
    struct point; // inheritance in extended C, but
                  // forward declaration in C++
  };
> This proposal does not support that practice, for two reasons. First, it introduces a gratuitous difference between C and C++, since C++ implementations must treat the declaration of point within location as a forward reference to the type location::point rather than a definition of an unnamed member. Second, this feature does not seem to be used widely in applications, perhaps because it compiles differently in extended C vs. C++.

See https://www.open-std.org/jtc1/sc22/wg14/www/docs/n1406.pdf

arguflow•1h ago
A really good example of it is in this lore thread here [1]. He explains it better than me so I'll just link it here

[1]: https://lore.kernel.org/lkml/200706301813.58435.agruen@suse....

fuhsnn•1h ago
> though some may feel the wrong way around Microsoft C behavior being permitted

The same extension can be enabled with `-fplan9-extensions`, might be more appealing to some!

tleb_•25m ago
-fplan9-extensions adds even more, it is not an alias: https://gcc.gnu.org/onlinedocs/gcc-15.2.0/gcc/Unnamed-Fields...

One of the link of past discussions was from Apr 2018 and discusses it. At that time GCC -fplan9-extensions support was too recent (gcc-4.6) to be considered. https://lore.kernel.org/lkml/20180419152817.GD25406@bombadil...

Now the reasoning isn't present in the patch but it probably is because they want step increments and -fms-extensions is a small-ish first step. Maybe -fplan9-extensions could make sense later, in a few years.

Quarrel•18m ago
It certainly seems to me that using this would eliminate 75% or so of the objections to it.

For this use case, at least, it feels like a CS version of racism. MSFT is bad, so no MSFT.

It largely clears up an idiosyncrasy from the evolution of C.

(but, as someone that briefly worked on plan9 in 1995/96, I like your idea :)

mrlonglong•1h ago
Microsoft "embrace, extend and takeover" comes to mind here. Caveat emptor.
pezgrande•32m ago
Isn't this a case of Evil Linux embracing M$ in order to extinguish it?