Assignments for Principles of Programming Languages