open System
open FSharpx.Control
let rec numbers n x = asyncSeq {
yield n
//printfn "%A" n
do! Async.Sleep(1)
if (n + 1 = x) then
yield n + 1
else
yield! numbers (n + 1) x
}
Async.Sleep(300) |> Async.RunSynchronously
for i in [0..300] do printfn "%A" i
numbers 0 300
|> AsyncSeq.iter (fun x -> printfn "%A" x)
|> Async.RunSynchronously