in reply to Transforming a for loop to a more functional approach?

It's not particularly pretty, but the following using map should work:
%MappingOfRecords = map { $_%2 ? () : ($ListOfRecords[$_+1] => $ListOfRecords[$_]) } (0..$#ListOfRecords);