Advertisement
Guest User

Untitled

a guest
Oct 10th, 2014
233
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
OCaml 0.90 KB | None | 0 0
  1. open V1_LWT
  2. open Lwt
  3.  
  4. let red fmt    = Printf.sprintf ("\027[31m"^^fmt^^"\027[m")
  5. let green fmt  = Printf.sprintf ("\027[32m"^^fmt^^"\027[m")
  6. let yellow fmt = Printf.sprintf ("\027[33m"^^fmt^^"\027[m")
  7. let blue fmt   = Printf.sprintf ("\027[36m"^^fmt^^"\027[m")
  8.  
  9. module Main (C: CONSOLE) (N: NETWORK) = struct
  10.  
  11.   module E = Ethif.Make(N)
  12.  
  13.   let or_error c name fn t =
  14.     fn t
  15.     >>= function
  16.     | `Error e -> fail (Failure ("Error starting " ^ name))
  17.     | `Ok t -> return t
  18.  
  19.   let start c net0 net1 =
  20.     or_error c "Ethif 0" E.connect net0
  21.     >>= fun e0 ->
  22.  
  23.     or_error c "Ethif 1" E.connect net1
  24.     >>= fun e1 ->
  25.  
  26.         (*ignore (N.listen net0 (
  27.             N.write net1
  28.         ));*)
  29.         N.listen net0 (
  30.             N.write net1
  31.         )
  32.         (*ignore (N.listen net1 (
  33.             N.write net0
  34.         ));
  35.  
  36.         C.log_s c "OK, everything started!" *)
  37. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement