While these optimizations make sense, I cannot hide my disappointment as to how easy they are to break. C-like branches/loops are definitely not designed for modern CPUs (at least not in an efficient manner)
Do anyone perhaps know one/multiple languages that try to push the programmer into manually defining dependencies/micro-parallelism? Or at least make it harder to write inefficient code? If not, what would you suggest?