O'Caml で質問です。
ocaml はリスト内包表記で [1 .. n] のようには書けないようですが、
同じことをするには関数を書くしかないのですか?

let rec count n =
let i = ref n in
let list = ref [] in
begin
while !i > 0 do
list := !i :: !list;
i := !i-1
done;
!list
end