不純な時はList(not list)使うのか

不純野郎ですまない。値を束縛後にガンガン突っ込みたいときは、F#でなく.NETが提供しているList(not list)を使うとよいってことだ。

open System.Collections.Generic 
let x = List<int>()
[1..10] |> List.iter (fun i -> x.Add i) 
x |> Seq.iter (fun z -> printfn "%i" z)

これで1〜10まで格納されたListになる。Seqを通した処理は可能なので、あとはF#ぽく書こう。

追記
コメント欄にあるように「ResizeArray」がこれの別名になっている、かつ、open System.Collections.Genericしなくていいので、こっちを使おうそうしよう。