用 Reason 显示类型和值
Displaying type and value with Reason
OCaml REPL 显示任何表达式的值和类型。例如,评估:
let rec map f = function
| [] -> []
| x::l -> f x :: map f l;;
给出:
val map : ('a -> 'b) -> 'a list -> 'b list = <fun>
这对于语言教学来说毫无价值。
我正在考虑切换到 Reason,但是您将如何获得相同的信息?
let rec map = (f) =>
fun
| [] => []
| [x, ...l] => [f(x), ...map(f, l)];
Try Reason不显示任何类型,我不确定是否存在 Reason 的 REPL。
rtop
是 reason-cli
附带的顶级(OCaml 术语中的 REPL),它实际上只是 utop
的薄包装。它会打印这样的类型:
let map: (('a) => 'b, list('a)) => list('b) = <fun>;
在 VSCode 中,merlin 还会在每个绑定上方显示的 "CodeLens" 中为您提供 let 绑定的类型。
OCaml REPL 显示任何表达式的值和类型。例如,评估:
let rec map f = function
| [] -> []
| x::l -> f x :: map f l;;
给出:
val map : ('a -> 'b) -> 'a list -> 'b list = <fun>
这对于语言教学来说毫无价值。
我正在考虑切换到 Reason,但是您将如何获得相同的信息?
let rec map = (f) =>
fun
| [] => []
| [x, ...l] => [f(x), ...map(f, l)];
Try Reason不显示任何类型,我不确定是否存在 Reason 的 REPL。
rtop
是 reason-cli
附带的顶级(OCaml 术语中的 REPL),它实际上只是 utop
的薄包装。它会打印这样的类型:
let map: (('a) => 'b, list('a)) => list('b) = <fun>;
在 VSCode 中,merlin 还会在每个绑定上方显示的 "CodeLens" 中为您提供 let 绑定的类型。