-1

在 Haskell 中,我们可以在终端输入多行代码,将其括在“:{”和“:}”之间。例如,键入

> :{ main = do
> print("Hello") :}

在 ghci 中,我们可以调用main. 我们如何在 utop 上的 Ocaml 中做到这一点?

4

1 回答 1

1

评论很好地解决了这个问题,但只是有一个答案,没有魔法。传统的 OCaml 顶层(简单地调用ocaml都会utop读入,直到找到一个终止;;令牌。

例如:

─( 17:36:11 )─< command 0 >───────────────────────────────────────────────────────────────────────────────────────────────────{ counter: 0 }─
utop # print_endline 
"Hello, world!";;
Hello, world!
- : unit = ()
─( 17:36:11 )─< command 1 >───────────────────────────────────────────────────────────────────────────────────────────────────{ counter: 0 }─
utop # let msg = "Hello, world!"
in
  print_endline msg;;
Hello, world!
- : unit = ()
于 2021-12-24T01:38:13.340 回答