The Perl 6 standard grammar is written in Perl 6, and specifies how a Perl 6 program is parsed.
Both STD.pm and viv are included in the STD package on CPAN.
viv should be read as VI ➔ V, where V and I are Roman numerals. So it's a translator from Perl 6 to Perl 5, expressly designed to run STD.pm6 - it compiles to Perl 5 code only features that are needed to run STD.pm6. However it can be used by other compilers as a base to produce code for other backends.