_orz_
Evolution is not the survival of the fittest but the not-dying of the unfit. That explains why we have so many different species in the same ecological niche. The example he used was different types of grass on the same field. All of those were fit enough to not die.
The second thing he always repeated was that biology only observes what does or at some point did work. That leads to a huge confirmation bias that research needs to be aware of. Two species might be very similar but just across different sides of the boundary of survival.
Both, gcc and clang, are orders of magnitude better tested than all the closed source applications, developed under tight timelines and that we essentially trust our lives with.
To be very clear, there are compiler bugs but those are almost never the problem in the first place. In the vast majority of cases it starts with buggy user code. An now back to handwritten assembly…
Strictly speaking you could obviously say reference counting is a form of GC. So to avoid GC you then surely recommend people to use C since that, in contrast to Rust, Swift, C++ and many others, really doesn’t use any GC, neither managed nor reference counting based.