Για παράδειγμα με βάση τη διαδικασία map και αντίστοιχη συνάρτηση f μπορούμε εύκολα να δημιουργήσουμε από έναν πίνακα v έναν νέο πίνακα v' του οποίου τα στοιχεία να είναι διπλάσια κάθε στοιχείου του v:
program Map; {$F+} const maxindex = 10; type realmap = function(x : real) : real; mylist = array [1..maxindex] of real; var i : integer l1, l2 : mylist; procedure map(f : realmap; v : mylist; var vnew : mylist); var i : integer; begin for i := 1 to maxindex do vnew[i] := f(v[i]) end; function double(x : real) : real; begin double := x * 2 end; begin for i := 1 to maxindex do readln(l1[i]); map(double, l1, l2); for i := 1 to maxindex do writeln(l2[i]); end.