In this treatment of let a lambda calculus version of let is given
(\f.z)(\x.y)
with the words
f is defined by f x = y in the expression z, and then as
let f x = y in z
I know from a beginner's perspective how Haskell's let works, i.e., the definitions follows the let and expressions (do something with those definitions) follows the in.
let <definitions> in <expression>
But this most general lambda calculus description is baffling. For example, I assume there could be a Haskell lambda function version of let f x = y in z. Could someone write this out -- and maybe give an example or two -- in Haskell? Just guessing, it seems a first lambda function takes a second lambda function -- somehow?
(\x -> y)(\f -> z)
But this is just a guess.