CS
355 Programming Languages
Syllabus,
Fall 2006
Course title: CS 355
Programming Languages
Credits: 4 required credits in the CS
major
Prerequisites: CS 171, CS 240,
and MAT 165
Instructor: Dr. Gancho Ganchev
Office: WS114 – Mo We 1:30
- 3:00, Tu Th 3:15 – 4:15
Phone: (203) 837-9349
Email: ganchevg@wcsu.edu, gfganchev@yahoo.com
Description:
Formal definition
of programming languages, including specification of syntax and semantics.
Types of languages and their uses. Organization of compilers illustrating
compilation of simple expressions and statements.
Resources:
Recommended Texts
[1]
Sebesta, R.W (2005), Concepts of Programming Languages,
Addison Wesley
[2] Sebesta, R. W.(2006), Programming the World Wide Web,
Addison Wesley
Class
notes and additional course materials will be
posted on the N: drive in the folder N:/Class/GanchevG/CS355
Attendance: You are expected
to be present for each class session.
Withdrawals: No withdrawals
after the official WCSU deadline.
Assessment: Four tests (approximately
40 minutes in duration), three assignments and a final exam (2 hours). The
emphasis will be on good understanding of programming language concepts and
paradigms.
Grading:
Active
Class Participation 05%
Assignments: 20%
Tests: 45%
Final
exam: 30%
Tentative Schedule of
Topics:
|
Session |
Date
|
Topics |
Reference
|
|
1-Th |
Sep 07 |
Introduction |
[1] |
|
2-Tu |
Sep 12 |
History of programming languages |
[1] |
|
3-Th |
Sep 14 |
Describing syntax |
[1] |
|
4-Tu |
Sep 19 |
Describing syntax |
[1] |
|
5-Th |
Sep 21 |
Static semantics |
[1] |
|
6-Tu |
Sep 26 |
Test 1 Operational semantics |
[1] |
|
7-Th |
Sep 28 |
Axiomatic semantics |
[1] |
|
8-Tu |
Oct 03 |
Axiomatic semantics |
[1] |
|
9-Th |
Oct 05 |
Denotational semantics |
[1] |
|
10-Tu |
Oct 10 |
Lexical and syntax analysis |
[1] |
|
11-Th |
Oct 12 |
Lexical and syntax analysis |
[1] |
|
12-Tu |
Oct 17 |
Test2 Scripting languages: Perl |
[2] |
|
13-Th |
Oct 19 |
Scripting languages: Perl |
[2] |
|
14-Tu |
Oct 24 |
Scripting languages: Perl |
[2] |
|
15-Th |
Oct 26 |
Scripting languages: Perl |
[2] |
|
16-Tu |
Oct 31 |
Names, bindings, type checking and scopes |
[1] |
|
17-Th |
Nov 02 |
Data types |
[1] |
|
18-Tu |
Nov 07 |
Data types |
[1] |
|
19-Th |
Nov 09 |
Expressions and assignments |
[1] |
|
20-Tu |
Nov 14 |
Statement level control structures |
[1] |
|
21-Th |
Nov 16 |
Subprograms |
[1] |
|
22-Tu |
Nov 21 |
Test 3 Implementing Subprograms |
[1] |
|
23-Tu |
Nov 28 |
Assignment 1 due
Implementing Subprograms
|
[1] |
|
24-Th |
Nov 30 |
Functional
Languages
|
[1] |
|
25-Tu |
Dec 05 |
Test 4 Functional
Languages |
[1] |
|
26-Th |
Dec 07 |
Assignment 2 due Logic Programming: Prolog |
[1] |
|
27-Tu |
Dec 12 |
Logic Programming: Prolog |
[1] |
|
28-Th |
Dec 14 |
Assignment 3 due. Additional Topics |
TBA |