F # benutzt den Sequenz-Cache korrekt

Ich versuche, Seq.cache mit einer von mir erstellten Funktion zu verwenden, die eine Folge von Primzahlen bis zu einer Zahl N ohne die Zahl 1 zurückgibt. Ich habe Probleme, herauszufinden, wie die zwischengespeicherte Folge im Gültigkeitsbereich bleibt, sie aber weiterhin verwendet wird in meiner Definition.

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

Irgendwelche Ideen, wie ich Seq.cache verwenden könnte, um dies zu beschleunigen? Gegenwärtig fällt es immer weiter aus dem Bereich heraus und verlangsamt nur die Leistung.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage