MWF 10:10-11:00am, Packard Lab 258
Check here for updates regarding the course.
This course will cover the fundamental concepts of programming languages. We will discuss design issues of various language constructs, examine the design choices in some common languages, and critically compare design alternatives. When you complete this course, you will not necessarily be an expert in any new languages, but you should have the knowledge needed to choose the best language for any programming task and to independently learn new languages.
For details about course content, grading, assignments, and office hours, see the class syllabus.
Each of the homeworks will be made available here after they are handed out in class. The online versions of the homework are in PDF format.
Each of the programming assignments will be made available here after they are handed out in class. The online versions of the assignments are in PDF format. All programs should be submitted via the Blackboard Learning System.
Task | Due |
---|---|
Read Ch. 1 (pp. 1-32) | 8/27 | Skim Ch. 2 (pp. 37-108) | 8/29 |
Read Sect. 3.1 - 3.3.1.10 (pp. 113-128) | 9/1 |
Read Sect. 3.3.2 - 3.5.1.2 (pp. 128-139) | 9/3 |
Read Sect. 3.5.2 - 3.5.3.6 (pp. 139-155) | 9/5 |
Read Sect. 5.1 - 5.4 (pp. 189-205) | 9/8 |
Read Sect. 5.5 - 5.7 (pp. 205-211) | 9/10 |
Read Sect. 5.8 - 5.12 (pp. 211-225) | 9/12 |
Read Sect. 6.1 - 6.4 (pp. 233-247) | 9/15 |
Read Sect. 6.5 - 6.7 (pp. 247-268) | 9/17 |
Read Sect. 6.8 - 6.9 (pp. 268-285) | 9/19 |
Read Sect. 7.1 - 7.6 (pp. 291-310) | 9/22 |
Read Sect. 7.7 - 7.8 (pp. 310-314) Read Sect. 8.1 - 8.2 (pp. 319-329) | 9/24 |
Read Sect. 8.3 - 8.6 (pp. 329-348) | 9/26 |
Read Sect. 16.1 - 16.6.5 (pp. 617-632) | 10/6 |
Read Sect. 16.6.6 - 16.8 (pp. 632-648) | 10/8 |
Read Sect. 9.1 - 9.5.3 (pp. 353-370) | 10/15 |
Read Sect. 9.5.4 - 9.5.8 (pp. 371-381) | 10/17 |
Read Sect. 9.6 - 9.11 (pp. 381-393) | 10/20 |
Read Sect. 10.1 - 10.3 (pp. 398-407) | 10/22 |
Read Sect. 10.4 - 10.6 (pp. 407-422) | 10/24 |
Read Sect. 15.1 - 15.5.6 (pp. 579-591) | 10/27 |
Read Sect. 15.5.7 - 15.5.12 (pp. 591-603) | 10/29 |
Read Sect. 15.6 - 15.10 (pp. 603-613) | 11/3 |
Read Sect. 11.1 - 11.4 (pp. 428-445) | 11/5 |
Read Sect. 11.5 - 11.7 (pp. 445-454) | 11/7 |
Read Sect. 12.1 - 12.4 (pp. 457-467) | 11/10 |
Read Sect. 12.5 - 12.6 (pp. 467-479) | 11/12 |
Read Java for C Programmers | 11/14 |
Read Sect. 12.7 - 12.10 (pp. 479-492) | 11/17 |
Read Sect. 13.1 - 13.4 (pp. 495-513) | 11/19 |
Read Sect. 13.5 (pp. 513-525) | 11/24 |
Read Sect. 13.6 (pp. 525-532) | 12/1 |
Read Sect. 14.1 (pp. 541-548), Read Sect. 14.4-14.6 (pp. 558-575) | 12/3 |