Others have already implicitly mentioned this, but I think it's worthing noting once more explicitly because a lot of people misunderstand this point.

Perl 5 runs on a VM.

It just doesn't have a name and is hidden in there along with the compiler. The result is that next to noone seems to notice that Perl5 has a VM just like - and is no more interpreted than - Java and others.