UCL - Studies

Version française

Study programmes
First cycle
Second cycle
Third cycle
Faculties and entities
Access to studies
Academic calendar
Search
Simple
Detailed
Per course

Computer language concepts [INGI1131]
[30h+30h exercises] 5 credits

Version française

Printable version

This course is not taught in 2005-2006

This course is taught in the 2nd semester

Language:

French

Level:

First cycle

>> Aims
>> Main themes
>> Content and teaching methods
>> Other information (prerequisite, evaluation (assessment methods), course materials recommended readings, ...)

Aims

- To show a deep understanding of the major programming concepts

- To understand and apply the basics of the most popular formalism for defining languages (syntax and semantics), specifically algorithmic programming languages.

- To understand how languages work in the principal programming paradigms, understand the relations between paradigms.

- To be able to quickly learn new languages, design languages targeted toward an arbitrary application, and be able to interface different languages.

Main themes

- Syntax: basics of abstract and concrete syntax, formalisms to define these syntaxes, representation of formal texts (syntax trees, graphs).

- Semantics: introduction to methods for defining semantics (operational semantics, axiomatic semantics, denotational semantics).

- Major programming concepts: function, object, class, abstraction, instantiation, inheritance, state, encapsulation, nondeterminism, concurrency, higher-order programming, compositionality, etc.

- Techniques for using these concepts.

- Programming paradigms and an introduction to the major programming languages.

- Principles and techniques of designing and interfacing languages.

- Practical applications in several domains (for example, distributed systems, constraint programming, human-computer interfacing).

Content and teaching methods

see "Main themes"

Other information (prerequisite, evaluation (assessment methods), course materials recommended readings, ...)

- Prerequisite:
Maîtrise de la programmation dans un langage de haut niveau tel que
LINF2121 Algorithmique et structures de données P. Dupont

- References
Recommended readingss:
(1) Sethi R, "Programming Languages : Concepts and Constructs" , Addison-Wesley, 1996.
(2) Van Roy P. and Haridi S, "Concepts, Techniques, and Models of Computer Programming" MIT Press, March 2004.
(3) Glynn Winskel, "The Formal Semantics of Programming Language" , MIT Press, 1993.



This site was created in collaboration with ADCP, ADEF, CIO et SGSI
Person in charge : Jean-Louis Marchand - Information : secretaire@fsa.ucl.ac.be
Last update :02/08/2006