Working with data structures in F#
// Immutable linked lists
let numbers = [1; 2; 3; 4; 5]
// List operations
let doubled = List.map (fun x -> x * 2) numbers
let evens = List.filter (fun x -> x % 2 = 0) numbers
// Lazy evaluated sequences
let squares = seq {
for i in 1..100 do
yield i * i
}
// First 5 squares
squares |> Seq.take 5 |> Seq.toList
let arr = [|1; 2; 3|]
arr.[0] <- 5 // Mutable
let capitals =
Map [ ("USA", "Washington")
("France", "Paris") ]
capitals.["France"] // "Paris"