Για παράδειγμα με βάση τη διαδικασία 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.