Signed-off-by: Jim Pryor <profjim@jimpryor.net>
All (recursively computable) functions can be represented by lambda
terms (the untyped lambda calculus is Turing complete). For some lambda terms, it is easy to see what function they represent:
All (recursively computable) functions can be represented by lambda
terms (the untyped lambda calculus is Turing complete). For some lambda terms, it is easy to see what function they represent:
-(\x x) represents the identity function: given any argument M, this function
-simply returns M: ((\x x) M) ~~> M.
+> `(\x x)` represents the identity function: given any argument `M`, this function
+simply returns `M`: `((\x x) M) ~~> M`.
-(\x (x x)) duplicates its argument:
-((\x (x x)) M) ~~> (M M)
+> `(\x (x x))` duplicates its argument:
+`((\x (x x)) M) ~~> (M M)`
-(\x (\y x)) throws away its second argument:
-(((\x (\y x)) M) N) ~~> M
+> `(\x (\y x))` throws away its second argument:
+`(((\x (\y x)) M) N) ~~> M`