λ -terms that correspond to Haskell functions Evening All
I already have a &quot;grasp&quot; of haskell (not terrible, about 6 month experience) and am trying to learn the fundamentals that sit behind it, thus am now turning my attention to trying to learn Lambda Calculus. I thought, perhaps mistakenly, that it might be a good idea to try to work out the λ -terms that corresponds to some functions in Haskell. I am trying the foldr and map functions.
soooo foldr should have the property
              foldr f u [N1, . . . , Nk] →f N1 (f N2 (. . . (f Nk u)))

and map would have (should imagine...)
              map f [N1, . . . , Nk] → [f N1, f N2, . . . , f Nk]

where → represents reduction by any number of β -steps....
But am struggling to flesh this out to be honest. Any help would be greatly appreciated...
Kind Regards.
You are looking for Church encodings of datastructures in $\lambda$-calculus, and in particular of lists.