Диалект языка Pascal, поддерживающий объектно-ориентированное программирование.
{ Calculation factorial values for numbers from 0 to 16 }
program facttest;var
n: byte;function factorial(n: byte): longint;
begin
if (n = 0) then
factorial := 1
else
factorial := n * factorial(n - 1);
end;begin
for n := 0 to 16 do
begin
writeln(n, '! = ', factorial(n));
end;
end.