let rec to = lambda n. let rec up = lambda m. if m=n+1 then nil else m :: up (m+1) in up 1 in let rec filter = lambda f. lambda l. if null l then nil else if hd l/f*f = hd l then filter f tl l else hd l :: filter f tl l, sieve = lambda l. if null l then nil else hd l :: sieve (filter hd l tl l) in sieve tl(to 50)