Church encodings written in Haskell