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. 24 | PDF via email (or submit paper copy in class) | 
| Homework 2 | Regular expressions, DFAs, and NFAs | Wednesday, Jan. 30 by 9am | PDF via email, or submit paper copy in class | 
| Homework 3 | Using flex | Thursday, Feb. 7 by midnight | Via git repo | 
| Homework 4 | Context Free Grammars | Wednesday, Feb. 20 by 9am | PDF via email, or submit paper copy in class | 
| Homework 5 | Scope, Flow, and Variables | Monday, March 4 by 9am | PDF via email, or submit paper copy in class | 
| Homework 6 | Essay: learn a new language | Wednesday, March 20 by 11:59pm | PDF via email, or submit paper copy to me that day | 
| Homework 7 | Intro to Haskell | Friday, March 29 by 11:59pm | Submit via git | 
| Homework 8 | More Haskell | Sunday, April 7 by 11:59pm | Submit via git | 
| Homework 9 | Haskell: Functors and data types | Sunday, April 14 by 11:59pm | Submit via git | 
| Homework 10 | Essay on functional programming | Wednesday, April 24 by 9am | PDF via email, or submit paper copy to me that day | 
| Homework 11 | Prolog | Friday, May 2 by 11:59pm | Submit via git |