News for hackers. Stuff that matters.

pebal

Re:Java's new AOT cache feature is in a rough state on Friday October 30, 2026 @10:37AM (#50304567)
Provide the GC name.
Re:Java's new AOT cache feature is in a rough state on Friday October 30, 2026 @08:29AM (#50303004)
Every GC in Java involves synchronization points and the pausing of application threads.
Re:Four Months of Zig on Wednesday October 28, 2026 @10:15AM (#50273990)
It’s great that they were created for this purpose, but I have a faster allocator in non-moving GC engine in C++. And I don't have to moving gigabytes of data.
Re:Four Months of Zig on Wednesday October 28, 2026 @09:24AM (#50273165)
A moving GC does not provide the fastest allocation. This is one of the myths in the Java world.
Re:JDK 28 on Sunday October 18, 2026 @03:23PM (#50144389)
ZGC is not pause-free. The only pause-free GC that exists is SGCL for the C++.
Re:Rust Port of TypeScript (Tsc) on Thursday October 08, 2026 @06:52AM (#50004264)
Rust could just as well have an optional tracing GC for shared ownership instead of ARC, potentially improving performance rather than reducing it. Having a GC doesn't inherently make a language slower.
Re:Rust Port of TypeScript (Tsc) on Thursday October 08, 2026 @04:43AM (#50003347)
I’m not saying it doesn't work. I’m saying it’s a waste of resources and won’t gain widespread popularity. The current trend is porting source code to languages that generate native code.
Re:Rust Port of TypeScript (Tsc) on Thursday October 08, 2026 @04:19AM (#50003178)
It depends on the workload. ARC can be more expensive than tracing GC, especially with heavily shared objects.

But my main point was that the presence of a GC has nothing to do with how close a language is to the metal. Memory management strategy and low-level capabilities are two separate things.

Re:Rust Port of TypeScript (Tsc) on Thursday October 08, 2026 @03:51AM (#50002986)
WASM makes no sense and has no future.
Re:Rust Port of TypeScript (Tsc) on Thursday October 08, 2026 @01:41AM (#50002130)
An absurd amount. The cost wouldn't exceed $500 under a subscription model.
Re:Rust Port of TypeScript (Tsc) on Thursday October 08, 2026 @01:06AM (#50001972)
There is no connection. Rust has ARC which performs worse than the tracing GC.
Re:A 40ms Go garbage collector pause caused by swap on Wednesday October 07, 2026 @07:55AM (#49991490)
What exactly don't you understand?
Re:A 40ms Go garbage collector pause caused by swap on Wednesday October 07, 2026 @04:43AM (#49989967)
Manual management involves an explicit function call. Functions called by a destructor are considered automatic.
Re:A 40ms Go garbage collector pause caused by swap on Tuesday October 06, 2026 @06:01PM (#49984739)
Yes, I can, e.g. by implementing deferred deallocation, which is a primitive GC form.

> actually, you don't know

I know because I’ve verified it.

Re:A 40ms Go garbage collector pause caused by swap on Tuesday October 06, 2026 @05:28PM (#49984413)
You might lose 100 ns or 300 ms. When? Nobody knows. You lose nothing when going out of scope with GC.
Re:A 40ms Go garbage collector pause caused by swap on Tuesday October 06, 2026 @11:17AM (#49979802)
It is also unknown how much work will be performed if ARC goes out of scope.
Re:A 40ms Go garbage collector pause caused by swap on Tuesday October 06, 2026 @09:24AM (#49978094)
Because some people are allergic to the word GC and pretend that a duck isn't a bird.
Re:A 40ms Go garbage collector pause caused by swap on Tuesday October 06, 2026 @06:54AM (#49976708)
That "good collector" has higher memory usage, has to pause mutator threads, and makes application code run slower. Thanks, but no thanks.
Re:A 40ms Go garbage collector pause caused by swap on Monday October 05, 2026 @10:48AM (#49965621)
It is better to scan everything than to copy it.
Re:A 40ms Go garbage collector pause caused by swap on Monday October 05, 2026 @05:02AM (#49962348)
> The problem with GC in the strict sense is that you cannot predict when it will happen.

It’s the same with ARC. You also don’t know when the counter will reach zero.

The inefficient combination of reference counting and a tracing garbage collector found in Python should be discarded in favor of a fully pause-free, concurrent GC.
Re:High-performance garbage collection for C++ on Tuesday September 15, 2026 @03:27PM (#49717595)
The standard provided no GC support. What was there was completely useless.
Re:Giving C a Superpower on Monday November 17, 2025 @11:21AM (#45955042)
RC is a GC method and the least efficient one.
Re:Should I choose Ada, SPARK, or Rust over C/C++? (2024) on Tuesday October 07, 2025 @05:52PM (#45509379)
The C++ standard has never included a garbage collector. It only provided mechanisms intended to facilitate the implementation of a GC, but they were useless.
Re:There is no memory safety without thread safety on Friday July 25, 2025 @10:50AM (#44683799)
This isn't fully concurrent GC. It pauses mutators threads and delegates them to perform some of the work for the GC.
Re:Garbage Collection for Systems Programmers on Wednesday July 23, 2025 @06:13AM (#44657505)
> I haven't seen a C++ programmer carefully opt into GC for a subset of their allocations even though there are GC libraries written for the language.

Can you give an example of such GC libraries?

> Whoever made that claim? Gamedevs particulary have been writing custom memory allocators since decades precisely because they know free() is not free and malloc() isn't fast.

Game developers use engines based on the GC.

> It's not an illusion, you literally use control over memory management.

The shared_ptr does not provide full control.

> What they don't want is random stalls in odd frames.

You can have fully concurrent GC, without any stalls.

Re:Redesigned Swift.org is now live on Thursday June 05, 2025 @08:25AM (#44190979)
But that's why Swift generates slower code. Memory is cheap, also for Apple, although Apple would like to hide that fact.
Re:Four Years of Jai on Saturday April 19, 2025 @06:09PM (#43739876)
It doesn't matter at all. C4 uses STW.
Re:Four Years of Jai on Saturday April 19, 2025 @05:37AM (#43735299)
Azul C4 is not a pauseless GC. In the documentation it says "C4 uses a 4-stage concurrent execution mechanism that eliminates almost all stop-the-world pauses."
Re:Four Years of Jai on Friday April 18, 2025 @07:21PM (#43732755)
There are no production implementations of GC algorithms that don't stop the world at all. I know this because I have some expertise in GC algorithms.

Older »