#trace
在 OCaml 中使用跟踪函数时,输出可能包括如下内容:
subRec --> <fun>
subRec* <-- "_1"
subRec* --> <fun>
subRec** <-- Var "_1"
Run Code Online (Sandbox Code Playgroud)
星星/标语是什么意思?
这用于标记部分应用到柯里化函数的结果。let f x y = ...
等价于let f x = fun y -> ...
:应用x
参数返回一个新函数,该函数又接受一个y
参数进行计算。第一个函数将被跟踪为f
,第二个函数(例如由 返回f 1
)标记为f*
。
# let f x y = x + y;;
# #trace f;;
# f 1 2;;
f <-- 1
f --> <fun>
f* <-- 2
f* --> 3
- : int = 3
# let g = f 1;;
f <-- 1
f --> <fun>
val g : int -> int = <fun>
# g 2;;
f* <-- 2
f* --> 3
- : int = 3
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
620 次 |
最近记录: |