CS 323: Programming Languages and Methodologies
Course Syllabus (20-ECES-323-001)
Meets: MWF 12:00-12:50 in Rvschl 615B
Instructor: Fred Annexstein Office: 889 Rhodes
Office Hours: MWF 11:00-11:50 Phone: 556-1807
Web Page: http://www.ececs.uc.edu/~annexste
Description: The students in this class shall learn two new programming paradigms: functional and logic programming. Such paradigms will be illustrated and exercised via the use of the languages Scheme, ML, and Prolog. The goal in learning these paradigms/languages is to provide the student with a solid introduction to two important programming methodologies. Programming assignments will reinforce the class presentations and stimulate the student to explore the practical aspects.
Prerequisites: See Course Descriptions in Department Office or on the web.
Grading: You will be assigned 6-8 written homework assignments accounting for 1/2 of your grade. There will be 2 exams during the quarter. The exams will account for the other 1/2 of your grade.
Textbooks: The Little Schemer, 4th Ed. by D.P. Friedman an M. Felleisen, MIT Press, 1996. Available at the bookstore or online for around $20. Web Notes on ML, Prolog, and other supplemental materials.
Schedule: (approximate, SUBJECT TO CHANGE)
Week |
Class Material |
Reading |
1 |
Introduction |
Scheme-Chapters
1, 2, 3 |
2 |
Procedures |
Scheme-Chapters
4, 5, 6 |
3 |
All
about lambda |
Scheme-Chapters
7, 8 |
4 |
Delayed
evaluation |
Scheme-Chapters
9,10 |
5
|
Streams |
Notes |
6
|
ML
Types and stars |
ML-Notes |
7
|
Modules |
ML-Notes |
8
|
Intro
to Prolog |
Notes |
9 |
Database
queries |
Notes |
10 |
Prolog
Topics |
Notes |
11 |
Final Exam
|
|