В Турбо Паскале существует возможность создания процедур и функций с параметрами, не имеющими типа. Бестиповые параметры могут быть параметрами-переменными и параметрами-константами, так как передаются только по адресу. Заголовок процедуры с параметрами, не имеющими типа может выглядеть таким образом:
Procedure MyProc(var par1,par2; const par3,par4);
Перед использованием формальных параметров необходимо выполнить их приведение к какому-либо типу. Использование бестиповых параметров дает большую гибкость программе, но ответственность за их корректное применение возлагается на программиста.
ПРИМЕР: Сложение первых N байт, начиная с того же места, что и X.
program without_type;
var N:word; s:string;
{$R-} (* отключение контроля за границами диапазонов *)
function Sum(var X; N:byte):word;
type A=array[1..1] of byte;
var i:byte; s:word;
begin
s:=0;
for i:=1 to n do S:=S+A(X)[i];
Sum:=s;
end;
begin
readln(s);
writeln(Sum(s,1)); {длина строки s}
writeln(Sum(s[1],1)); {код первого символа строки s}
writeln(Sum(s[1],length(s)));
{сумма кодов всех символов строки s}
read(N);
writeln(Sum(N,2));
{сумма двух байт, из которых состоит N типа word}
end.