Zero Cost Abstractions
>The only proper way to reason about the cost of these>abstractions is to inspect the generated machine code.To me, that's a big problem with a lot of these Heldencompilers.  They may generate really optimal machine code.  Then again, they may not, and the difference between optimizations working well and not working well in runtime efficiency is so great (I've measured 1000x for Swift) that they might as well be completely different languages.For reference, 1000x means that 1 second turns into 16 minutes, and having that type of difference in something that's completely opaque is not a useful performance tool for me, because predictability is at least half the game in performance.  So something like Knuth's transformation systems that turn optimization into a dialogue between programmer, compiler and instrumentation seems like a better idea[1].[1] https://www.cs.sjsu.edu/~mak/CS185C/KnuthStructuredProgrammi...