let serve _ r w =
  let rec loop r w =
    Reader.read_marshal r >>= fun req ->
    (match req with
     | `Eof -> ()
     | `Ok req -> Writer.write_marshal w (eval req) ~flags:[]);
    loop r w
  in

  loop r w