Something
public text v1 · immutableprogram test;
type
rec = record
a: integer;
b: string;
end;
procedure print_rec(var r: rec);
begin
writeln('a: ', r.a, ' b: ', r.b);
end;
var
f: file of rec;
i: integer;
r1, r2: rec;
begin
assign(f, 'test.dat');
reset(f);
for i := 1 to 10 do
begin
r1.a := i;
r1.b := 'foo';
write(f, r1);
end;
reset(f);
for i := 1 to 10 do
begin
read(f, r2);
print_rec(r2);
end;
close(f);
end.