标签: ocaml-toplevel

OCaml:测量顶层的执行时间

我们应该如何测量OCaml顶层函数的执行时间?

ocaml ocaml-toplevel

5
推荐指数
2
解决办法
963
查看次数

ocaml命令行找不到“ topfind”

我已经安装了顶层服务器,并设置了$ OCAML_TOPLEVEL_PATH。

export OCAML_TOPLEVEL_PATH=/Users/smcho/.opam/system/lib/toplevel
Run Code Online (Sandbox Code Playgroud)

我检查目录是否存在,并且有一个文件topfind

这是我的~/.ocamlinit文件内容。

#use "topfind"
#camlp4o
#thread
#require "core.top"
#require "core.syntax"
Run Code Online (Sandbox Code Playgroud)

问题是我收到错误消息,说找不到topfind。

> ocaml
        OCaml version 4.02.1

Cannot find file topfind.
Unknown directive `camlp4o'.
# 
Run Code Online (Sandbox Code Playgroud)

使用“ ustop”,我没有错误信息。

可能是什么问题?

这是我的ocaml环境设置。

> opam config env
CAML_LD_LIBRARY_PATH="/Users/smcho/.opam/system/lib/stublibs:/usr/local/lib/ocaml/stublibs"; export CAML_LD_LIBRARY_PATH;
OPAMUTF8MSGS="1"; export OPAMUTF8MSGS;
MANPATH=":/Users/smcho/.opam/system/man"; export MANPATH;
MAKELEVEL=""; export MAKELEVEL;
MAKEFLAGS=""; export MAKEFLAGS;
PERL5LIB="/Users/smcho/.opam/system/lib/perl5:"; export PERL5LIB;
OCAML_TOPLEVEL_PATH="/Users/smcho/.opam/system/lib/toplevel"; export OCAML_TOPLEVEL_PATH;
PATH="..."; export PATH;
Run Code Online (Sandbox Code Playgroud)

ocaml opam ocaml-toplevel

5
推荐指数
1
解决办法
2639
查看次数

OCaml toplevel打印当前目录?

在OCaml toplevel内我试图打印当前目录.

# Filename.current_dir_name;;
Run Code Online (Sandbox Code Playgroud)

返回

- : string = "."
Run Code Online (Sandbox Code Playgroud)

这不是很有用.

显示当前目录的完整路径所需的toplevel命令是什么?

ocaml ocaml-toplevel

4
推荐指数
1
解决办法
1095
查看次数

Ocaml代码编译,但不与顶级

我正在做一个免费课程.下面的ocaml代码在我"make"时编译,但是一旦我试图把它放到顶层就会抱怨.为什么?

let main () =
  (* Parsing arguments *)
  let f_name = ref "" in
  Arg.parse [ ] (fun s -> f_name := s) "Mini-Java analyzer";
  (* Parsing of the source file *)
  let simple_java_prog =
    if String.compare !f_name "" = 0 then failwith "no program file given";
    Localizing.current_file_name := !f_name;
    let f_desc = open_in !f_name in
    let lexbuf = Lexing.from_channel f_desc in
    let java_prog =
      try Java_parser.program Java_lexer.token lexbuf
      with
      | e ->
          Printf.printf "Exception during parsing: %s\n"
        (Printexc.to_string …
Run Code Online (Sandbox Code Playgroud)

ocaml load undefined-reference ocaml-toplevel

3
推荐指数
1
解决办法
414
查看次数

如何在ocaml(顶级)中显示大长度的列表

我已经创建了一个包含很多元素的列表,ocaml我想看看里面有什么,但ocaml只是向我展示了这样的一小部分:[e1,e2,e3;...].如何配置ocaml显示所有内容?

ocaml read-eval-print-loop ocaml-toplevel

3
推荐指数
1
解决办法
95
查看次数

如何获得 OCaml 的顶层中的最后一个评估表达式?

我如何引用 OCaml 的顶级 repl 中最后一个评估的表达式?

即 JavaScript 使用$_,python 使用_,haskell ghci 使用it

ocaml read-eval-print-loop ocaml-toplevel

3
推荐指数
1
解决办法
82
查看次数

ocaml命令行找不到"topfind"

我已经安装opam,运行opam init,运行opam switch 4.06.0它创建了一个4.06.0内部目录~/.opam,运行"EVAL opam confing env"其中出口$OCAML_TOPLEVEL_PATH~/.opam/4.06.0/lib/toplevel除其他事项外,当启动ocaml我得到了可怕的:

$ ocaml
        OCaml version 4.06.0

Cannot find file topfind.
Unknown directive `camlp4o'.
# 
Run Code Online (Sandbox Code Playgroud)

我已经看过这个了,这一点都没有解决我的问题而且我的智慧结束了(第一次设置OCaml).这是我的~/.ocamlinit:

(* Added by OPAM. *)
let () =
  try Topdirs.dir_directory (Sys.getenv "OCAML_TOPLEVEL_PATH")
  with Not_found -> ()
;;
#use "topfind"
#camlp4o
#thread
#require "core.top"
#require "core.syntax"
Run Code Online (Sandbox Code Playgroud)

编辑:看起来我没有安装core,安装core解决了,但现在我得到的一系列导入诊断:

Exception:
Invalid_argument
 "The ocamltoplevel.cma library from …
Run Code Online (Sandbox Code Playgroud)

ocaml opam ocaml-toplevel

2
推荐指数
1
解决办法
525
查看次数

如何静默加载顶级模块

在 my 中~/.ocamlinit,我有一些指令:

#use "topfind"
#thread
#require "core.top"
Run Code Online (Sandbox Code Playgroud)

结果,每次 OCaml 顶层(即ocaml)启动时,我都会看到这个巨大的文本墙:

        OCaml version 4.02.3

Findlib has been successfully loaded. Additional directives:
  #require "package";;      to load a package
  #list;;                   to list the available packages
  #camlp4o;;                to load camlp4 (standard syntax)
  #camlp4r;;                to load camlp4 (revised syntax)
  #predicates "p,q,...";;   to set these predicates
  Topfind.reset();;         to force that packages will be reloaded
  #thread;;                 to enable threads

/usr/lib/ocaml/threads: added to search path
/usr/lib/ocaml/unix.cma: loaded
/usr/lib/ocaml/threads/threads.cma: loaded
/usr/lib/ocaml/compiler-libs: added to search …
Run Code Online (Sandbox Code Playgroud)

ocaml ocaml-toplevel toplevel

2
推荐指数
1
解决办法
317
查看次数