简体   繁体   中英

How to run OCaml + Core script?

I am trying the Real World OCaml book. It talks about installing OPAM, then OCaml and Jane Street Core. I got utop loaded properly per the book instructions so that it automatically loads Core.

Without Core, I can run a generic OCaml script simply by ocaml script.ml without compiling. But this doesn't work if the script uses Core. What's the right command if I want to run a Core based OCaml script without compiling?

Running a script that depends on additional libraries requires you to tell the compiler where to find the libraries. Your best option is to use ocamlscript , which you can also install with OPAM. Just do opam install ocamlscript . Then read about ocamlscript here . Here's a working example:

$ cat a.ml
#! /usr/bin/env ocamlscript
Ocaml.ocamlflags := ["-thread"];
Ocaml.packs := [ "core" ]
--
open Core.Std

let () = print_endline "hello"

Make sure a.ml has the executable bit set. Then run it:

$ ./a.ml
hello

As a bonus, ocamlscript also compiles to native code, so you get high performance scripts.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM