let rec cat (fname:filename) =
let fd = (Unix.openfile fname [Unix.O_RDONLY] 0o640) in
let len = 16*1024 in
let buff = String.create len in
let rec boucle () =
begin
let n = (Unix.read fd buff 0 len) in
let s = String.sub buff 0 n in
if (n<len) then s
else s^(boucle ())
end in
boucle ()