在 Haskell 中,我们可以在终端输入多行代码,将其括在“:{”和“:}”之间。例如,键入
> :{ main = do
> print("Hello") :}
在 ghci 中,我们可以调用main
. 我们如何在 utop 上的 Ocaml 中做到这一点?
评论很好地解决了这个问题,但只是有一个答案,没有魔法。传统的 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 = ()