我正在尝试真实世界的OCaml书.它讨论了安装OPAM,然后是OCaml和Jane Street Core.我按照书中的说明正确加载utop,以便自动加载Core.
没有Core,我可以简单地运行一个通用的OCaml脚本而ocaml script.ml无需编译.但是如果脚本使用Core,这不起作用.如果我想在不编译的情况下运行基于Core的OCaml脚本,那么正确的命令是什么?
运行依赖于其他库的脚本需要您告诉编译器在哪里可以找到库.您最好的选择是使用ocamlscript,您也可以使用OPAM安装.做吧opam install ocamlscript.然后在这里阅读ocamlscript .这是一个有效的例子:
$ cat a.ml
#! /usr/bin/env ocamlscript
Ocaml.ocamlflags := ["-thread"];
Ocaml.packs := [ "core" ]
--
open Core.Std
let () = print_endline "hello"
Run Code Online (Sandbox Code Playgroud)
确保a.ml已设置可执行位.然后运行它:
$ ./a.ml
hello
Run Code Online (Sandbox Code Playgroud)
作为奖励,ocamlscript还可以编译为本机代码,因此您可以获得高性能脚本.