
Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
A lambda calculus homework assignment from october 1st, 2008. The assignment includes four problems: drawing abstract syntax trees (ast) and reducing each lambda term to normal form for given terms, and translating c code to lambda calculus. The first problem involves drawing asts and reducing normal forms for four lambda terms. The second problem requires translating a c function and its main function to lambda calculus.
Typology: Assignments
1 / 1
This page cannot be seen from the preview
Don't miss anything!

(a) (λx. λy. x − y + z) 8 7 (b) (λx. λy. y x) 3 (λx. x) (c) (λz. (λx. λy. y x) z) (λx. x + 3) (d) λz. (λz. (λx. λy. y x) z) (λx. x + z)
int f(int (g)(...)) { / g points to a function that returns an int */ return g(g); } int main() { int x; x = f(f); return x; }