F # poprawnie używa pamięci podręcznej sekwencji
Usiłuję użyć Seq.cache z funkcją, którą stworzyłem, która zwraca sekwencję liczb pierwszych do liczby N z wyłączeniem liczby 1. Mam problem z ustaleniem, jak zachować buforowaną sekwencję w zasięgu, ale nadal jej używać w mojej definicji.
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
Jakieś pomysły, w jaki sposób mogę użyć Seq.cache, aby przyspieszyć ten proces? Obecnie spada z zasięgu i spowalnia tylko wydajność.