我必须在不使用内置模块的情况下构建Stream类型。到目前为止,我的代码如下:
type stream = int -> int;;
let hd (s : stream) = s 0;;
let tl (s : stream) = (fun i -> s (i + 1));;
let (+:) (s : stream) (c : int) = (fun i -> s i + c);;
let (-|) (s1 : stream) (s2 : stream) = (fun i -> s1 i - s2 i);;
let map (f : int -> int) (s : stream) = (fun i -> f (s i));;
但是,我尝试创建一个简单的值来保存流以便我可以测试我的代码都失败了。有人可以帮忙吗?