I can remember a time when this was unthinkable. These days, with 4+ GHz processors and 32-bit default integers, it is not an unreasonable situation.
I personally like the unindexed DO…ENDDO structure. When I see things like DO WHILE (.true.)…ENDDO in other languages, I think it looks like an inelegant hack around a missing language feature.
I’m unsure about the idea of a BLOCK structure hiding as a loop. It seems to me if you have a loop, which is a fundamental programming concept, it should be unambiguous that it is a loop.