カウンター lazy - Gushwell's F# Programming Diary

タグの表示

すべてのタグ » lazy (RSS)

F#:SeqとLazyの比較

F#:lazy - 評価遅延 で、 > 遅延評価の例といえばやっぱり無限リストじゃないでしょうか。 と、まじかんとさんからのコメントがあったので、再度 lazyについて考えて見ます。 無限リストではありませんが、こんなコードを書いて確かめてみました。 let vals = seq { for i in 1..20 do printf "."; yield i } printfn "Seq";; printfn "%A" (Seq.hd vals...
Posted gushwell | 3 comment(s)
分類: , ,

F#:lazy - 評価遅延

正確な表現かどうかはわかりませんが、lazyを使うと評価遅延させることができるようです。 いわゆる 「Proxyパターンを使ったインスタンス生成の遅延」と似たようなことが簡単にできるみたい。 たとえば、 let lazyVal = lazy (2 + 2) printfn "%A" lazyVal.IsValueCreated printfn "%A" lazyVal.Value printfn "%A" lazyVal.IsValueCreated...
Posted gushwell | 7 comment(s)
分類: ,