Я пытаюсь использовать Seq.cache с функцией, которую я создал, которая возвращает последовательность простых чисел до числа N, исключая номер 1. У меня возникли проблемы с выяснением того, как сохранить кешированной последовательности в области видимости, но по-прежнему использовать ее в моем определении.F # правильно использовать кеш последовательности
let rec primesNot1 n =
{2 .. n}
|> Seq.filter (fun i ->
(primesNot1 (i/2) |> Seq.for_all (fun o -> i % o <> 0)))
|> Seq.append {2 .. 2}
|> Seq.cache
Любые идеи о том, как я могу использовать Seq.cache, чтобы сделать это быстрее? В настоящее время он продолжает снижаться из объема и лишь замедляет производительность.
Удивительные благодарности, производительность хорошая. – gradbot