Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Mostly the same. An accident for a licensing philosophy difference. Wow LLVM brought modularity but I bet that if 5% of the human resources that got into llvm got into modularising GCC the issue would have been fixed. GCC nowadays is getting modular. After all this years GCC is still faster on average and llvm is getting slower after each release or at best do not progress.


I'm fairly certain a good chunk of gcc improvements wouldn't have happened without clang existing and showing that it can be done better and that people care.


Yeah, this is an attitude I come across at work a lot. A lot of pointless work is justified as "unifying" several projects. Of course, a nod to the xkcd on Standards [1].

This is why we end up with monocultures (eg in agriculture), which all works great... until it doesn't (RIP Cavendish; say hello to Gros Michel).

Even in a large organization multiple projects that ostensibly do the same thing can be good. They can have different strengths and weaknesses and work from different design decisions and philosophies. Then the "market" (often the rest of the company) can decide which to use. This often produces much better results than simply anointing a winner.

Anointing winners rewards politics rather than the technical.

Of course this can go too far but so can anything. There can be too many competing products. That tends to highlight a problem with your organization's incentives structure (eg heaping rewards on new projects rather than maintaining things). Competition can also be toxic.

You may think it's a waste to have both clang and gcc. I couldn't disagree more. I think the existence of clang has inarguably made gcc better. Would gcc have gotten more modular in the absence of clang? Maybe... but maybe not.

I'll leave you with this quote:

"A foolish consistency is the hobgoblin of simple minds."

[1]: https://xkcd.com/927/


Actually that's "little minds"[1] but close enough?

1: https://en.wikiquote.org/wiki/Ralph_Waldo_Emerson#Self-Relia...




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: