gpt4 book ai didi

ocaml - "Eval"OCaml 中的字符串

转载 作者:行者123 更新时间:2023-12-04 22:29:43 25 4
gpt4 key购买 nike

我正在尝试“评估”一个表示 OCaml 中 OCaml 表达式的字符串。我正在寻找与 Python 的 eval 等效的东西.

到目前为止,我还没有找到太多东西。 Parsing模块看起来可能会有所帮助,但我无法找到一种方法来评估一个字符串。

最佳答案

这是怎么做的,但我没有告诉你。 (另外 Parsing 模块是关于 Parsing,而不是执行代码)

#require "compiler-libs" (* Assuming you're using utop, if compiling then this is the package you need *)
let eval code =
let as_buf = Lexing.from_string code in
let parsed = !Toploop.parse_toplevel_phrase as_buf in
ignore (Toploop.execute_phrase true Format.std_formatter parsed)

例子:
eval "let () = print_endline \"hello\";;"

注意尾随 ;;在代码示例中。

使用 ocamlbuild ,您将需要同时使用 compiler-libscompiler-libs.toplevel .

关于ocaml - "Eval"OCaml 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33291754/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com