, , , . , , F # - , (, pairwise) IEnumerator.
, IEnumerator (. fssnip.net). , :
let loadFile path =
let rec loop source = iter {
let! key = source
let! value = source
match key, value with
| Some key, Some value ->
yield key, value
yield! loop source
| _ -> () }
Enumerator.toSeq (fun () ->
loop (File.ReadAllLines(@"keyvalue.txt").GetEnumerator())) |> dict
, iter - , , F # seq. - iter.
share