COEN 171
Principles
of Programming Languages
Winter 2000
Instructor:
Ron Danielson
Office EC 244
Phone 408 – 554 -
6813
Email rdanielson@scu.edu
Web Page www.cse.scu.edu/~rdaniels/
Office hours M, T,
Th 8:45 - 9:45; M, T, Th 3:00 - 5:00; by appointment
Text:
Sebesta, Concepts of Programming Languages Fourth
Edition, Redwood City, California, Benjamin/Cummings Publishing Company,
1999
Objectives:
To understand the
fundamental concepts underlying the design of programming languages, how those
concepts are explicated in various languages, and how they might be
implemented. To gain greater understanding of and program in languages that are
not imperative in style. To apply understanding of fundamental concepts to
evaluating the design of a programming language with which you are not
familiar.
Grading:
Midterm 20%
Final 25%
Homeworks 10%
Programming
Assignments 25% (tentatively due January 18, February 8,
and March 7)
Term Paper 20% (tentatively
due March 9)
Tentative Syllabus
Week
of |
Topics |
Reading |
January 3 |
Introduction; preliminary concepts,
history; syntax and semantics |
Chapters
1, 2, 3 |
January 10 |
Syntax and semantics (continued); names,
types, scope, bindings |
Chapter
4 |
January 17 |
Functional languages |
Chapter
13 |
January 24 |
Data types; expressions; control
structures |
Chapters
5, 6, 7 |
January 31 |
Subprograms and parameters |
Chapter
8 |
February 7 |
Logic-oriented languages; midterm |
Chapter
15 |
February 14 |
Logic-oriented languages (cont.);
implementing subprograms |
Chapter
9 |
February 21 |
Data abstraction; object-oriented
programming |
Chapters
10, 11 |
February 28 |
OOP (continued); Concurrency and
synchronization |
Chapters
12 |
March 6 |
Exceptions |
Chapter
13 |
March 15 |
1:30
pm - Final exam |
|