我必须生成一个包含斐波那契数列的无限列表。我是 ML 新手,所以我想检查一下这是否正确。
-datatype 'a infist=NIL
= | CONS of 'a * (unit -> 'a inflist);
- fun fib a b = CONS (a , fn()=> fib b (a+b));
val fib=fn: int->int-int inflist
这就是所谓的生成器功能吗?当我给出 a 和 b 输入时,它会给我一个实际的输出,即无限的 fib 序列吗?