【发布时间】:2019-06-14 09:45:29
【问题描述】:
我正在阅读 Jason Hickey 的 "Introduction to OCaml" 并坚持锻炼。
我想我理解这个例子,但我不明白如何编写一个函数r a b c,它可以通过定义r 来预先计算b 和c 的固定值的内容,例如:
let r b c a =
(*...*)
其次,我看不出只有b 和c 可以预先计算什么东西...这里最复杂的部分是取b *. b -. 4. *. a *. c 的平方根,我无法计算没有a。
【问题讨论】:
-
您可以在没有
a的情况下计算根的一些项。例如,b*b或4*c是常量,如果b和c已绑定。 -
@Richard-Degenne :是的,但是 sqrt 和除法需要很长时间,以至于预先计算一次加法和一次乘法不会改变时间。我也没有找到这个练习的答案......
-
我不确定这里的目标是在时间上提供一个高效的程序,而是能够识别不依赖于给定变量的表达式的子部分。我认为 Richard-Degenne 的评论正是您想要的
-
是的,这个练习不是经过深思熟虑的。他们很容易想出更好的部分应用示例,恕我直言。
标签: ocaml