CSCI 3155, Summer 2007: Schedule


Handout E
DateTopicSkillsReadingWorksheet
4th June 2007
  • Introduction
    • course structure
    • policies
    • goals
  • Evaluating languages
#1: Language Critique Sebesta, chapters 1.2 and 1.3 Worksheet #1
5th June 2007
  • Syntax vs. Semantics
  • Describing Syntax: BNF
#2: Syntax Sebesta, chapter 3 up to and including 3.3.1.9 Worksheet #2
Appendix A
6th June 2007
  • Describing Syntax: BNF (continued)
  • Denotational Semantics
#2: Syntax
#3: Denotational Semantics
Handout A Worksheet #3
7th June 2007 Bindings and Lifetime #4: Bindings and Lifetime Sebesta, chapter 5 up to and including 5.4.3.4
You may skip 5.4.2.3, we will return to it later.
Lab exercise:
Worksheet #4

11th June 2007 Parameter Passing and Scoping #5: Scoping
#6: Parameter Passing
Sebesta, chapters 9 through 9.5.2 (inclusive), and 5.8 through 5.10 (inclusive) Worksheet #5
12th June 2007 Types I.1: Type checking and equality #7: Basics of Types Handout B: Type Checking
Sebesta, chapters 6.2 up to 6.2.1.1 (inclusive) and 6.4
Lab exercise: Worksheet #6
13th June 2007 Types I.2:
  • Array types
  • Pointer types
  • Set types
#8: Arrays
#9: Pointers and References
Sebesta, chapter 6.5 up to 6.5.5 (inclusive) and 6.6
Sebesta, chapter 6.9 up to 6.9.6 (inclusive), and 6.9.8.3 (don't worry too much about tombstones)
Worksheet #7
14th June 2007 Types I.3: Union types and basic subtyping #7: Basics of types
#10: Subtyping
Handout D: Subtyping (pp 1-3)
Sebesta, chapter 6.8
Optional:
Handout C: Set types
Sebesta, chapter 6.7
Lab exercise: Worksheet #8

18th June 2007 Control Constructs #11: Control Constructs Sebesta, chapter 8 up to and including 8.3
19th June 2007 Mid-term Examination All of the above
20th June 2007 Subprograms, Operators and Overloading #12: Subprograms Sebesta, chapters 7.2.1.5 through 7.3 (inclusive)
Sebesta, chapters 9.6 and 9.7
Sebesta, chapter 7.7
Lab exercise: Worksheet #9
21th June 2007 Functional Programming #13: Functional Programming Harper's ML tutorial, chapters 2-4 (inclusive) Lab exercise:
Worksheet #10

25th June 2007 Functional Programming continued
Types II
  • parametric polymorphism
  • function types
  • algebraic datatypes
#13: Functional Programming
#14: Advanced Types (functional)
Harper's ML tutorial, chapters 5, 8-11 (inclusive) Lab exercise:
Worksheet #11
26th June 2007 Types III: Advanced subtyping, Object-Oriented Basics #17: Advanced Types (object-oriented)
#16: Object-Oriented Programming
Handout D: Subtyping (pp 3,4)
Sebesta, chapter 12 up to (including) 12.3.4
Sebesta, chapters 12.5 up to 12.5.3 (inclusive)
Worksheet #12
27th June 2007 Object-Oriented Programming #17: Advanced Types (object-oriented)
#16: Object-Oriented Programming
Handout G
Sebesta, chapter 12.6
Sebesta, chapter 12.11
Lab exercise: Worksheet #13
Source code:
28th June 2007 Abstract Datatypes and Generic Programming #15: Abstract Datatypes Sebesta, chapter 11 until 11.2 (inclusive)
Handout F
Sebesta, chapters 11.4.2, 11.4.3
Sebesta, chapters 11.5.2, 11.5.3
Lab exercise: Worksheet #14

2nd July 2007 Exception Handling #18: Exceptions Sebesta, chapter 14 until 14.1 (inclusive)
Sebesta, chapters 14.3 and 14.4
Worksheet #15
3rd July 2007
  • Review
  • All the rest
4th July 2007 Independence day
5th July 2007 Final Exam All of the above