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 [INGI2131]
[30h+30h exercises] 5 credits

Version française

Printable version

This course is taught in the 2nd semester

Teacher(s):

Baudouin Le Charlier, Peter Van Roy (coord.)

Language:

French

Level:

Second cycle

>> Aims
>> Main themes
>> Content and teaching methods
>> Other information (prerequisite, evaluation (assessment methods), course materials recommended readings, ...)
>> Programmes in which this activity is taught
>> Other credits in programs

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.

Programmes in which this activity is taught

ECGE3DS/IG

Diplôme d'études spécialisées en économie et gestion (informatique de gestion - Master in Information Systems)

INFO2

Ingénieur civil informaticien

LINF2

Licence en informatique

Other credits in programs

ECGE3DS/IG

Diplôme d'études spécialisées en économie et gestion (informatique de gestion - Master in Information Systems)

(5 credits)

Mandatory

INFO21

Première année du programme conduisant au grade d'ingénieur civil informaticien

(5 credits)

Mandatory

LINF21

Première licence en informatique

(5 credits)

LINF21/GN

Première licence en informatique (informatique générale)

(5 credits)

Mandatory

LINF21/GS

Première licence en informatique (informatique de gestion)

(5 credits)

Mandatory

MATH22/G

Deuxième licence en sciences mathématiques

(5 credits)



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