working lambda calculus parser