Remix.run Logo
lo_zamoyski 2 hours ago

Ah, but "simplicity" is not necessarily "fewest lines of code".

Code is first and foremost for human consumption. The compiler's job is to worry about appeasing the machine.

(Of course, that's the normative ideal. In practice, the limits of compilers sometimes requires us to appease the architectural peculiarities of the machine, but this should be seen as an unfortunate deviation and should be documented for human readers when it occurs.)

AceJohnny2 an hour ago | parent [-]

> Code is first and foremost for human consumption. The compiler's job is to worry about appeasing the machine.

Tangentially, it continues to frustrate me that C code organization directly impacts performance. Want to factorize that code? Pay the cost of a new stack frame and potentially non-local jump (bye, ICache!). Want it to not do that? Add more keywords ('inline') and hope the compiler applies them.

(I kind of understand the reason for this. Code Bloat is a thing, and if everything was inlined the resulting binary would be 100x bigger)