REPL 中的 Ocaml 多行函数

Ant*_*ias 1 ocaml read-eval-print-loop

我正在尝试编写一个多行函数以在 OCaml REPL 中使用。我已经看过这个问题,但是在 REPL 中使用它时建议的语法似乎不起作用。

要使用一个人为的示例,我无法编译以下内容:

let theFun: int -> int = fun x ->
    let foo = x;
    foo;;
Run Code Online (Sandbox Code Playgroud)

当我输入没有“;;”的时候 在此在线 REPL中,它们无论如何都会被添加,这给了我一个语法错误。当我在本地计算机上使用 REPL 时,除非包含“;;”,否则不会对输入进行求值,这也会导致语法错误。

小智 6

您的示例不正确,正确的方法是

let theFun: int -> int = fun x ->
    let foo = x in
    foo;;
Run Code Online (Sandbox Code Playgroud)