Programming Languages (CSC-302 98S)


Course Syllabus

This is an approximate syllabus and it is likely to change.

Week One: Basics

Class 1: Introduction (Monday, January 19, 1998)

Class 2: History (Wednesday, January 21, 1998)

Class 3: Designing Languages (Friday, January 23, 1998)

Week Two: Syntax

Class 4: Design, Continued (Monday, January 26, 1998)

Class 5: Syntax (Wednesday, January 28, 1998)

Class 6: An Expression Grammar (Friday, January 30, 1998)

Week Three: Basic Concepts

Class 7: More Grammars (Monday, February 2, 1998)

Class 8: The Deadly Conditional Grammar (Wednesday, February 4, 1998)

Class 9: Attribute Grammars (Friday, February 6, 1998)

Week Four: Types

Class 10: Attribute Grammars, Continued (Monday, February 9, 1998)

Class 11: Types (Wednesday, February 11, 1998)

Class 12: Type Equivalence and Coercion (Friday, February 13, 1998)

Week Five: Variables and Control

Class 13: Expressions, Variables, and Assignments (Monday, February 16, 1998)

Class 14: More Variables (Wednesday, February 18, 1998)

Class 15: Attribute Grammars, Revisited (Friday, February 20, 1998)

Weeks Six and Seven: Control, Functions, and Functional Programming

Class 16: Control (Monday, February 23, 1998)

Wednesday, February 25, 1998: Exam

Friday, February 27, 1998: No class, SamR at SIGCSE

Class 17: More Control: Loops (Monday, March 2, 1998)

Class 18: Procedures (Wednesday, March 4, 1998)

Class 19: More on Parameters (Friday, March 6, 1998)

Week Eight: Functional Programming

Class 20: Introduction to Functional Programming (Monday, March 9, 1998)

Class 21: Functional Programming: The Scheme Perspective (Wednesday, March 11, 1998)

Class 22: Other Issues in Functional Languages and Scheme (Friday, March 13, 1998)


Spring break, March 14-29


Week Nine: More Functional Programming

Class 23: Continuations (Monday, March 30, 1998)

Class 24: More Topics in Scheme (Wednesday, April 1, 1998)

Class 25: Guest Lecture (Friday, April 3, 1998)

Week Ten: Even More Functional Programming

Class 26: Scheme, Concluded (Monday, April 6, 1998)

Class 27: Lazy Functional Programming in Haskell (Wednesday, April 8, 1998)

Class 28: More Haskell Concepts (Friday, April 10, 1998)

Week Eleven: Lazy Functional Programming

Class 29: Lazy Evaluation (Monday, April 13, 1998)

Class 30: Lazy Evaluation, Revisited (Wednesday, April 15, 1998)

Class 31: Functionally Pure Input and Output (Friday, April 17, 1998)

Week Twelve: Logic Programming

Class 32: Introduction to Logic Programming and Prolog (Monday, April 20, 1998)

Class 33: Logic Programming in Prolog (Wednesday, April 22, 1998)

Week Thirteen: Object-Oriented Programming

Friday, April 24, 1998: Exam

Class 34: More Prolog Programming (Monday, April 27, 1998)

Class 35: Perspectives on Object-Oriented Programming (Wednesday, April 29, 1998)

Class 36: Object-Oriented Languages; Introduction to Semantics (Friday, May 1, 1998)

Week Fourteen: Semantics

Class 37: Introduction to Semantics (Monday, May 4, 1998)

Class 38: Semantics of Scheme (Wednesday, May 6, 1998)

Class 39: Wrapup (Friday, May 8, 1998)


Monday, May 11, 1998: Final Examination


Disclaimer Often, these pages were created "on the fly" with little, if any, proofreading. Any or all of the information on the pages may be incorrect. Please contact me if you notice errors.

Source text last modified Tue Jan 19 15:54:34 1999.

This page generated on Tue Jan 19 15:56:37 1999 by SiteWeaver.

Contact our webmaster at rebelsky@math.grin.edu