如何在OCaml中获得OCaml程序的结果?(即JAVA中ProcessBuilder的OCaml版本)

如何在OCaml中获得OCaml程序的结果?(即JAVA中ProcessBuilder的OCaml版本),ocaml,Ocaml,我对OCaml非常陌生,最近正在学习程序验证。 为了实现,我需要一个Ocaml库模块,它可以获得另一个Ocaml程序的结果。我希望该库与JAVA中的ProcessBuilder具有相同的功能 我想知道Ocaml是否有这样一个工具。当然,Ocaml提供了创建进程的工具。下面是一个示例,演示如何在函数中使用Unix.open\u process\u # let input = Unix.open_process_in "echo 'hello, world'";; val input : in_ch

我对OCaml非常陌生,最近正在学习程序验证。 为了实现,我需要一个Ocaml库模块,它可以获得另一个Ocaml程序的结果。我希望该库与JAVA中的ProcessBuilder具有相同的功能

我想知道Ocaml是否有这样一个工具。

当然,Ocaml提供了创建进程的工具。下面是一个示例,演示如何在函数中使用
Unix.open\u process\u

# let input = Unix.open_process_in "echo 'hello, world'";;
val input : in_channel = <abstr>
# input_line input;;
- : string = "hello, world"
# input_line input;;
Exception: End_of_file.
#让input=Unix.open_进程_出现在“echo'hello,world'”中;;
val input:in_channel=模块,用于安全地将OCaml值与字符串进行转换。

当然,OCaml提供了创建进程的功能。下面是一个示例,演示如何在
函数中使用
Unix.open\u process\u

# let input = Unix.open_process_in "echo 'hello, world'";;
val input : in_channel = <abstr>
# input_line input;;
- : string = "hello, world"
# input_line input;;
Exception: End_of_file.
#让input=Unix.open_进程_出现在“echo'hello,world'”中;;
val input:in_channel=module,用于安全地将OCaml值与字符串进行转换