irc-bot/callback.ml

25 lines
657 B
OCaml

open Ocs_types
let prefix_print prefix =
function
| [| Sstring txt |] ->
print_endline (prefix ^ txt);
Sunspec
| _ ->
raise (Ocs_error.Error "Invalid arguments")
let prefix_print_proc prefix =
let primf = Pfn (prefix_print prefix) in
let sprim = { prim_fun = primf; prim_name = "iobuf-write" } in
Sprim sprim
let code =
Capply1 ((Cval (prefix_print_proc "pfx: ")),
(Cval (Sstring "hello world")))
let _ =
let thread = Ocs_top.make_thread () in
let outport = Ocs_port.open_output_string () in
Ocs_eval.eval thread (Ocs_print.print outport false) code;
Ocs_port.get_output_string outport