In Android land for example, there is a popular "clean" 3 layer architecture, where model classes are blindly mapped multiple times (even in cases where this is suboptimal).
I have lost count of people building "clean" inefficient caching mechanism instead of just using an HTTP cache.
Side note:
I believe these things are useful in some situations. Maybe the solution is to have a smart compiler that compiles out these inefficiencies?
Some (most?) apps are just skins around a database. Amazing what Facebook did with Messenger rewrite [0]
Is there an incentive problem? Generally, people get bonuses/accolades for making a slow system fast, not for keeping a system consistently fast. I admit the former is easier to measure.
0 - https://engineering.fb.com/2020/03/02/data-infrastructure/me...
Assuming you are referring to “pure”, in the context of functional programming and isolation of side effects.
Allow me to quote me, to clarify this part, then.
"when [they aren't] a great fit for the host language"
However "clean code" connotes to me the techniques advocated in "Clean Code" by Robert C. Martin, which amongst other things, advocates small descriptive functions.
Compilers are software. A "smarter" compiler is probably going to consume more resources.
The situation today is vastly better than in the days of IE6.
> A world where clean code destroys performance
Clean code does not mean code that is not performant.
In my mind, "clean code" is foremost small methods that do one thing, and are well-described. These small methods will often be optimised away, in the unlikely situation where they were the bottleneck in the first place.
In my experience messy code "for performance" reasons was usually code that had claims to being "fast", but was often incorrect and hard to fix.