News for hackers. Stuff that matters.
Re:A simplified model of Fil-C by dataflow on Friday April 17, 2026 @06:44PM (#47811373)
> Fil-C is one of the most unrated projects I've ever seen

When's the last time you told a C/C++ programmer you could add a garbage collector to their program, and saw their eyes light up?

Re:A simplified model of Fil-C by FuckButtons on Friday April 17, 2026 @06:55PM (#47811456)
Exactly, the Venn diagram of programmers using c/c++ and programmers who can use a garbage collector for their workload is two circles.
Re:A simplified model of Fil-C by pizlonator on Friday April 17, 2026 @07:03PM (#47811527)
Except for:

- Me. I'm a C++ programmer.

- Any C++ programmer who has added a GC to their C++ program. (Like the programmers who used the web browser you're using right now.)

- Folks who are already using Fil-C.

Re:A simplified model of Fil-C by FuckButtons on Friday April 17, 2026 @07:30PM (#47811721)
I’m also a C++ programmer, I can’t even use half of the C++ stdlib for real time thread work, I certainly can’t use a GC.
Re:A simplified model of Fil-C by pizlonator on Friday April 17, 2026 @08:23PM (#47812032)
There are many C++ programmers and we are not the same!

My original foray into GCs was making real time ones, and the Fil-C GC is based on that work. I haven’t fully made it real time friendly (the few locks it has aren’t RT-friendly) but if I had more time I could make it give you hard guarantees.

It’s already full concurrent and on the fly, so it won’t pause you

Re:A simplified model of Fil-C by cxr on Friday April 17, 2026 @10:26PM (#47812647)
∃ ≠ ∀
Re:A simplified model of Fil-C by brucehoult on Friday April 17, 2026 @09:37PM (#47812452)
Definitely not true. I've been using Boehm GC with my C/C++ programs for decades — since the 90s, at least.
Re:A simplified model of Fil-C by dataflow on Friday April 17, 2026 @11:13PM (#47812851)
Does this also hold true when you look at codebases that others also worked on, rather than just you?
Re:A simplified model of Fil-C by fweimer on Friday April 17, 2026 @11:59PM (#47813025)
A lot of C++ programmers use C++ and garbage collection daily because their C++ compiler uses a tracing garbage collector.

https://gcc.gnu.org/onlinedocs/gccint/Type-Information.html

Re:A simplified model of Fil-C by dataflow on Saturday April 18, 2026 @03:32AM (#47813932)
Which only appears relevant if you disregard critical differences like this:

The GCC garbage collector GGC is only invoked explicitly. In contrast with many other garbage collectors, it is not implicitly invoked by allocation routines when a lot of memory has been consumed. [1]

[1] https://gcc.gnu.org/onlinedocs/gccint/Invoking-the-garbage-c...

Re:A simplified model of Fil-C by pjmlp on Saturday April 18, 2026 @04:51AM (#47814321)
Except if they happen to work with .NET, Unreal, V8, COM/WinRT,...
Re:A simplified model of Fil-C by mike_hearn on Monday April 20, 2026 @05:05AM (#47831848)
A few important, production C++ codebases do use tracing mark/sweep GC.

Most famously: Chrome does (Oilpan), GCC does (or did), Unreal does (for core game state heaps), I think WebKit also does.

Re:A simplified model of Fil-C by fulafel on Friday April 17, 2026 @10:48PM (#47812731)
A lot of the frameworks do it. There's RC in GNOME/GTK, C++ stdlib, and built into Objective-C.

And of course it's easy to think of lots of apps that heavily use those or another form of GC.

Re:A simplified model of Fil-C by dataflow on Friday April 17, 2026 @11:09PM (#47812832)
Regardless of what you consider a GC (let's not have that debate for the millionth time on the internet...), for the point I was trying to make, I was not including RC as a form of GC. And I don't think Fil-C relies solely on RC either.
Re:A simplified model of Fil-C by pjmlp on Saturday April 18, 2026 @04:49AM (#47814310)
Those using Managed C++, C++/CLI, Unreal C++, the group of WG21 folks that voted C++11 GC into the standard, or targeting WebAssembly (which runs on a managed runtime for all practical purposes).

Windows developers using COM, and WinRT, Apple developers using IO and Driver Kit.