METUComputer EngineeringFall 1993
Instructors: Cem Bozsahin, Cigdem Keyder (Turhan)
Prereq: CENG 112
Textbook: Programming Language Concepts and Paradigms, by David Watt, Prentice-Hall, 1989.
references: Introduction to Functional programming using standard ML, by A. Wikstrom, Prentice-Hall, (ML reference)
Structure and interpretation of computer programs, by Abelson and Sussman, MIT Press (functional prog. and abstraction reference)
Topics: We will cover approximately chapters 1-8, 10 and 13 from the textbook, with a few sections omitted. The emphasis will be on overview of features that are common to all kinds of languages, such as types, data abstraction, control mechanisms, storage, and execution methods. We will study the implementation of these concepts in a procedural language (Pascal) and a functional language (ML).
Another goal of this course is to introduce you to a different style of programming called Functional Programming (FP). As an alternative to procedural programming, FP has gained a lot of popularity throughout the world since the late 1980s. You will learn a functional language called Standard ML (SML). SML is representative of a group of functional programming languages that are in common use today. Studying it will give you the flavour-and perhaps the pleasure of-doing FP.
We will study a prime example of procedural programming languages as well. You will learn programming in C. Both C and SML will be covered in the lab sessions. You will have hands-on experience in the lab assignments; that will give you an opportunity to try out the programming features in two different types of languages. Lab attendance is required.
Grading:
