1    do
2        let list = List.new
3        list.add 5
4        assert list.size == 1 && list[0] == 5
5    
6    do
7        let list = List<i32>.new
8        list.add 5
9             add 23
10            add 18
11   
12       assert list.size == 3
13       assert list.max == 23
14   
15       list |> map { _ * 2 + 3 }
16            |> sum
17            |> { assert _ == 101 }
18   
19   do
20       let list = mut_list_of<i32> 5 2 4 3 1
21       list.sort
22       assert list[0] == 1 && list[1] == 2 && list[2] == 3
23              && list[3] == 4 && list[4] == 5
24   
25   do
26       let list = List.new
27       list.add (5, ((true, 2.2), "11", "17"))
28            add (7, ((false, 3), "22", "28"))
29   
30       let mut sum1 = 0
31       let mut sum2 = 0
32       let mut sum3 = ""
33       for i, ((b, r), s1, s2) in list do
34           sum1 += i
35           sum2 += r
36           sum3 += s1
37   
38       assert sum1 == 12 && sum2 == 5.2 && sum3 == "1122"
39