Department of Computer Science, Unit Catalogue 2007/08
CM20168 Programming IV: programming languages
| Credits: 6 |
| Semester: 2|
|Assessment: CW 25%, EX 75%|
|Before taking this unit you must take CM20167|
Aims: To create an appreciation of the history of programming and programming languages, in order to provide perspective on current developments. To explore the relationship between computing as a discipline and the computing industry. To examine programming languages from a linguistic viewpoint. To examine current developments in programming languages. To provide the experience of giving a formal presentation.
1) Demonstrate a basic knowledge of the early history of programming and the key programming languages that have affected the development of computing;
2) To know one of the standard ways in which programming languages are divided into families;
3 ) To be able to argue for a particular categorization of a new language by its characteristics;
4) Give an account of the evolution of the computing industry and to extrapolate current trends in the industry, while realising the weakness of extrapolation;
5) To be able to discuss current developments in programming language research.
Working with others (F), Communications (F, A).
The pre-history (Pascal, Babbage, Turing, etc.) 1940s and 1950s: the birth of an industry and a subject. The four classical language families. Examples of languages such as Lisp, C++, Fortran, Cobol, Snobol, Icon, Apl, Perl, Fortran 90. Examination in detail of several new programming languages to understand where they fit in the families and what they offer that is new. Exploration of several advanced topics in programming languages chosen from current research activities.