- let rec work msg =
- Ipc.send oc msg;
- match Ipc.recv ic with
- | (Job (Some x) : 'input msg_from_lord) ->
- work (Result (i, (x, f x)))
- | (Job None : 'input msg_from_lord) ->
+ let rec loop () =
+ match (Ipc.recv ic : 'input msg_from_lord) with
+ | Job (Some x) ->
+ Ipc.send oc (Result (i, (x, f x)));
+ loop ()
+ | Job None ->