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