sub printFormat { local $~ = shift; return write; } BEGIN { format TEST = ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< $_[0] ~~ ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< $_[0] . our %N2I = ( text2print => 0, ); format TESTNAMEY = ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< $_[$N2I{text2print}] ~~ ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< $_[$N2I{text2print}] . use constant do { my $ix = 0; +{ map { $_ => $ix++ } qw[ TEXT2PRINT ] } }; format TESTNAMEDCONSTANTY = ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< $_[TEXT2PRINT] ~~ ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< $_[TEXT2PRINT] . }