Please make sure you understand the policy towards Academic Integrity.
Homework assignments are due via email to the instructor by 11:59pm on the date specified. Late assignments will be penalized in accordance with our Late Policy.
The table below gives the assignments, and associated dates. All future dates/topics are tentative until such assignments are made available.
Assignment | Topic | Due Date | How to submit |
---|---|---|---|
First essay | Short technical opinion piece | Wednesday, Jan. 25 | Via email (or submit paper copy in class) |
Homework 2 | Regular expressions, DFAs, and NFAs | Wednesday, Feb. 1 | Via email (or submit paper copy in class) |
Homework 3 | Using flex | Wednesday, Feb. 8 | Via email (by 11:59pm) |
Homework 4 | CFGs, LL and LR parsing | Monday, Feb. 27 | Via email (or submit paper copy in class) |
Homework 5 | Bindings, control flow, and data types | Monday, March 6 | Via email (or submit paper copy in class) |
Second essay | Analysis of a new language | Monday, March 27 | Via email (or submit paper copy in class) |
Homework 7 | Intro to Haskell | Monday, April 3 | Via email (by 11:59pm) |
Homework 8 | More Haskell | Monday, April 10 | Via email (by 11:59pm) |
Homework 9 | Even MORE Haskell | Monday, April 10 | Via email (by 11:59pm) |
Homework 10 | Prolog | Friday, April 28 | Via email (by 11:59pm) |
3rd essay | Essay: reflections on functional programming | Friday, May 5 | Due by the start of class |