# Homework Assignments

# Overview

Homework will usually be assigned each week and due the following Monday before class starts.

For homeworks, collaboration is allowed as long as it is
*clearly documented* and in accordance with the
course policy.

Remember that no late homework will be accepted for credit — even if you are not here for class on the due date — in order for us to post solutions immediately. If you have a planned absence, it's your responsibility to give your work to a classmate to turn in on your behalf.

# Homeworks

- Homework 1: PL Intro (solutions posted)
- Homework 2: Scheme Lists (solutions posted)
- Homework 3: Scheme Evaluation (solutions posted)
- Homework 4: Scanning (solutions posted)
- Homework 5: Grammars and Parsing (solutions posted)
- Homework 6: ASTs (solutions posted)
- Homework 7: Scope Tree, Frames and Closures (solutions posted)
- Homework 8: Functions and arguments (solutions posted)
- Homework 9: 3AC IR (solutions posted)
- Homework 10: LLVM Optimization