ela>select _ [] = []; select fnk (x::xs) = fnk x :: select fnk xs  
ela>dbl x = x*2  
ela>select dbl [1,2,3]  
[2,4,6]
ela>select (\x -> x*2) [1,2,3]  
[2,4,6]
ela>select (*2) [1,2,3]  
[2,4,6]
ela>min (x::xs) = min' x xs where min' cur_min (x::xs) = if cur_min < x then min' cur_min xs else min' x xs; min' cur_min [] = cur_min  
ela>min [44,2,45,6]  
2  
ela>min [44,2,45,6,1]  
1  
ela>inf x = & x :: inf (x+1)  
ela>open list  
ela>take 10 (inf 1)  
[1,2,3,4,5,6,7,8,9,10]
ela>fib = fib' 1 1 where fib' x y = & x :: fib' y (x + y)  
ela>take 10 <| fib  
[1,1,2,3,5,8,13,21,34,55]