←back to thread

383 points hkalbasi | 1 comments | | HN request time: 0.217s | source
Show context
throwaway106382 ◴[] No.42814864[source]
> Mold is already very fast, however it doesn't do incremental linking and the author has stated that they don't intend to. Wild doesn't do incremental linking yet, but that is the end-goal. By writing Wild in Rust, it's hoped that the complexity of incremental linking will be achievable.

Can someone explain what is so special about Rust for this?

replies(11): >>42814916 #>>42814925 #>>42814952 #>>42814958 #>>42814975 #>>42815031 #>>42815056 #>>42815091 #>>42815564 #>>42816061 #>>42816644 #
compiler-guy ◴[] No.42814975[source]
That’s puzzling to me too. Rust is a great language, and probably makes developing Wild faster. But the complexity of incremental linking doesn’t stem from the linker’s implementation language. It stems from all the tracking, reserved spacing, and other issues required to link a previously linked binary (or at least parts of it) a second time.
replies(2): >>42815683 #>>42815923 #
1. tialaramex ◴[] No.42815683[source]
I would guess the idea is that in Rust the complexity is cheaper on a "per unit" basis so you can afford more complexity. So yes, it is a more complicated problem than the previous linkers, but, in Rust maybe you can get that done anyway.