next up previous contents
Next: Operating System Functions Up: Lent Term 1999: Part Previous: Lent Term 1999: Part

Comparative Programming Languages

Lecturer: Dr M. Richards (mr@cl.cam.ac.uk)

No. of lectures: 12

Introduction.
A brief history of programming languages. Comparing languages: programming paradigms, language features, execution styles. What makes a good good language.

Brief survey of various languages.
Algol, BCPL, C, C++.

Text processing languages.
Macro processors, SNOBOL, Awk, Perl.

AI languages.
Brief sketch of Emacs lisp and Prolog.

Smalltalk.
Smalltalk, Self and the Squeak System.

Language design issues concerning C, C++ and Java.

Pointers and arrays.
What are pointers? Pointer arithmetic. Null pointers, Vectors and arrays. Errors involving abstract data structures.

Functions and procedures.
Argument calling modes. Recursion. Dynamic free variables. Non local jumps. Function pointers. Coroutine.

Memory allocation.
Scope. Heap and stack. Destructors. Memory deallocation errors. Memory leaks. Garbage collection.

Miscellaneous topics.
Machine dependencies. Separate compilation and data hiding. Setpoints. Operator overloading. Single/multiple inheritance. Exceptions.

Standards.

Recommended books:


Pratt, T.W. & Zelkowitz, M.V. (1996). Programming Languages, Design and Implementation. Prentice-Hall (3rd ed.).

Appleby, D. & VandeKopple, J.J. (1997). Programming Languages, Paradigm and Practice. McGraw-Hill (2nd ed.).

Stroustrup, B. (1994). The Design and Implementation of C++. Addison-Wesley.

Mössenböck, H. (1993). Object-Oriented Programming in Oberon-2, Springer-Verlag.

Antonakos, J.L. & Mansfield Jr., K.C. (1998). Reference Guide to C and C++. Prentice-Hall.

Kernighan, B.W. & Ritchie, D.M. (1988). The C Programming Language. Prentice-Hall (2nd ed.).

Aho, A.V., Kernighan, B.W. & Weinberger, P.J. (1988). The AWK Programming Language. Addison-Wesley.

Chapman, N. (1988). PERL, The Programmer's Companion. Wiley.


next up previous contents
Next: Operating System Functions Up: Lent Term 1999: Part Previous: Lent Term 1999: Part
Christine Northeast
1998-10-01