所以我试图为ml课程做作业,问题是该函数需要一个集合类型:int * int -> int
例如,我看到解决问题的方式是使用另一个函数(比如迭代)来解决问题。
我相信lisp有一种方法可以让函数只在另一个函数的范围内。
我认为可以做到这一点:
fun a (x, y) =
let
fun b (i,j) = ...;
in
...;
[不确定这个的确切语法,但我记得读过这样的东西只是为了临时变量(可能是函数?)
但如果这是错误的,请纠正我。
答案 0 :(得分:1)
在ML中,功能是一等公民(即价值观)。您可以通过SELECT [key] FROM OPENJSON(@json)
绑定它们,就像任何其他值一样。
因此,您的想法是正确的。对于作为“迭代器”传递的函数(即映射/折叠/ iter),它尤其是一个很好的设计。对于任何进一步的建议,你的问题太模糊了。