5

私のマップ機能は次のとおりです:

type 'a stream = Cons of 'a * 'a stream Lazy.t

let rec ones = Cons(1, lazy(ones));;

let rec map (f:'a -> 'b) (s:'a stream) : 'b stream =
  match s with
  |Cons(h,t) -> Cons(f h, lazy (map f (Lazy.force t)));;
;;

正しい?そのように Lazy.force を実行すると、すでにメモ化されますか?

4

2 に答える 2