
p1 = [1,2,11,8,3,9,10] 
   
p1 is a list of 6 integers 
p2 = p1 !! 2 
   
p2 is 11 (show the third element starting the count at 1) 
p3 = drop 2 p1 
   
p3 is [11,8,3,9,10] (first two elements removed) 
p4 = take 2 p1 
   
p4 is [1,2] (all but first two elements removed) 
p5 = last p1 
   
p5 is 10 (last element of list) 
p6 = head p1 
   
p6 is 1 (first element of list) 
p7 = init p1 
   
p7 is [1,2,11,8,3,9] (all but last element of list) 
p8 = 2 : p1 
   
p8 is [2,1,2,11,8,3,9,10] (2 placed at head of list) 
p9 = [1] : [[2],[3],[4]] 
   
p9 is [[1],[2],[3],[4]] (object of same type enters the list) 
p10 = [1] ++ [2,3,4,5] 
   
p10 is [1,2,3,4,5] (append the list [2,3,4,5] to [1]) 
p11 = [1..10] 
   
p11 is [1,2,3,4,5,6,7,8,9,10] 
p12 = [1..] 
   
p12 is the infinite list [1,2,...] (haskell tries to print it all!!!) 
p13 = [1,4..10] 
   
p13 is [1,4,7,10] 
p14 = length p1 
   
p13 is 7 (number of elements in 1st level of list) 
p15 = [null p1, null []] 
   
p15 is [False,True] (check whether list is empty) 
p16 = reverse p1 
   
p16 is [10,9,3,8,11,2,1] (reverse a list) 
p17 = maximum p1 
   
p17 is 11 (maximum in a list) 
p18 = minimum p1 
   
p18 is 1 (minimum in a list) 
p19 = sum p1 
   
p19 is 44 (sum of all numbers in a list) 
p20 = product p1 
   
p20 is 47520 (product of all numbers in a list) 
p21 = [elem 11 p1, elem 7 p1] 
   
p21 is [True,False] (is an object an element of a list) 
p22 = cycle [1,2,3] 
   
(take 10 p22) is [1,2,3,1,2,3,1,2,3,1] (repeat pattern forever) 
p23 = repeat [1,2] 
   
(take 5 p23) is [[1,2],[1,2],[1,2],[1,2],[1,2]] (repeat pattern forever) 
p24 = replicate 3 [1,2] 
   
p24 is [[1,2],[1,2],[1,2]] (repeat pattern set number of times) 

