While fiddling around with some empty blocks that had been used as placeholders, happened to accidentally notice that "do {;}" and "{;}" have different realtime costs. For example, with perl 5.20.1, on x86_64: for (my $i = 0; $i < 1e8; ++$i) { } # ET ~= 5s for (my $i = 0; $i < 1e8; ++$i) { do { ; } } # ET ~= 5s for (my $i = 0; $i < 1e8; ++$i) { { ; } } # ET ~= 10s I'd have guessed that both constructs would get optimized away during compilation, but evidently "{;}" incurs some execution overhead that "do {;}" does not. This is not causing any difficulty whatsoever, nor am I suggesting that anything is wrong or even peculiar about this; simply curious about why it is.Thread Next