diff options
author | Alex Auvolat <alex@adnab.me> | 2015-03-13 11:16:30 +0100 |
---|---|---|
committer | Alex Auvolat <alex@adnab.me> | 2015-03-13 11:16:30 +0100 |
commit | 8afa5bb9d6e5a0f59d13bcdc9bc2e153c336445d (patch) | |
tree | ff1957519ac3d5a6a22578429c7760b444cd76c4 /src/primes.ml | |
parent | 4d3f12f167729ecb5de5b9bf8e18f9eca52beced (diff) | |
download | SystemeReseaux-Projet-8afa5bb9d6e5a0f59d13bcdc9bc2e153c336445d.tar.gz SystemeReseaux-Projet-8afa5bb9d6e5a0f59d13bcdc9bc2e153c336445d.zip |
Commit uncommited stuff.
Diffstat (limited to 'src/primes.ml')
-rw-r--r-- | src/primes.ml | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/primes.ml b/src/primes.ml index 6975b9e..c5a1831 100644 --- a/src/primes.ml +++ b/src/primes.ml @@ -28,20 +28,21 @@ module Primes (K : Kahn.S) = struct (get qi) >>= (fun v -> if v <> -1 then begin - K.output @@ Format.sprintf "%d@." v; - (delay new_channel ()) >>= - (fun (qi2, qo2) -> doco [ filter v qi qo2 ; primes qi2 ]) + K.output (string_of_int v ^ "\n"); + let qi2, qo2 = new_channel () in + doco [ filter v qi qo2 ; primes qi2 ] end else return ()) let main : int process = - (delay new_channel ()) >>= - (fun (q_in, q_out) -> doco [ integers 2000 q_out ; primes q_in ]) + (return ()) >>= + (fun () -> let q_in, q_out = new_channel () in + doco [ integers 10000 q_out ; primes q_in ]) >>= (fun () -> return 42) end -module Eng = Kahn_seq.Seq +module Eng = Kahn_pipe.Pipe module P = Primes(Eng) let () = |