Readings for CS 3500
Required readings
- One way to translate an algebraic specification
into Java.
- Sestoft chapter 1: compilation, loading, and execution
- Sestoft chapter 3: Java naming conventions
- Sestoft chapter 4: comments and program layout
- Sestoft chapter 6: variables, parameters, fields, and scope
- Sestoft chapter 9: classes
- Sestoft chapter 10: classes and objects in the computer
- Sestoft chapter 11: expressions
(may omit sections 11.1 through 11.4 and 11.6)
- Sestoft chapter 5: types
- Sestoft chapter 21: generic types and methods
- Liskov and Guttag chapter 1: introduction
- Liskov and Guttag sections 2.0 through 2.5, 2.6.1, 2.7: Java
- Liskov and Guttag sections 5.0 through 5.4
(skipping discussion of the clone method): data abstraction
- Liskov and Guttag sections 6.0 through 6.4, and sections 6.7 and 6.8:
iterators
- Liskov and Guttag section 7.6: abstract classes
- Read
The Story of Mel, a Real Programmer, by Ed Nather.
- Liskov and Guttag chapter 5 (skipping discussion of the clone method):
data abstraction
- Chris Okasaki.
Red-black trees in a functional setting.
Journal of Functional Programming, 9(4),
pages 474-477, July 1999.
- Sestoft chapter 13: interfaces
- Sestoft chapter 22: generic collections and maps
Supplemental readings
Last updated 27 November 2012.