let get () =
let rec iter acc nb_read i =
if nb_read >= !n then
acc
else
let pred_i =
if i <= 0 then
Cam_constant.com_history_size - 1
else
i - 1
in
match history.(pred_i) with
None -> acc
| Some e ->
iter (e::acc) (nb_read+1) pred_i
in
List.rev (iter [] 0 !pos)