(setq true
(lambda (u)
(lambda (v)
u
)
)
)
(setq false
(lambda (u)
(lambda (v)
v
)
)
)
(setq myif
(lambda (cond)
(lambda (then)
(lambda (else)
(funcall (funcall cond then) else)
)
)
)
)
(funcall (funcall (funcall myif true) 'a ) 'b )
(funcall (funcall (funcall myif false) 'a ) 'b )