Compiled binary lambda calculus is incredibly expressive and tiny. Read the articles by Justine and Tromp.
+
Exploring different encodings of data as function abstractions is fascinating.
+
Pure lambda calculus can be very beautiful. You will understand if you try to have some fun with it.
+
I don't like naming parameters of functions. Using bruijn indices is a universal reference independent of the function and can actually help readability if you're familiar enough.