Как создать рекурсивный список в OCaml
Я хотел бы реализовать аналог Haskellcycle
функция.
Если я передаю элементы списка явно, это кажется тривиальным:
let cycle a b c =
let rec l = a::b::c::l in
l
cycle 1 2 3
генерирует рекурсивный список1, 2, 3, 1...
Но как создать рекурсивный список на основе другого обычного списка?
let cycle lst = ...
использование
cycle [1;2;3]