Computer language concepts

lingi1131  2018-2019  Louvain-la-Neuve

Computer language concepts
5 credits
30.0 h + 30.0 h
Q2
Teacher(s)
Language
English
Prerequisites
Ce cours suppose acquise la maîtrise de la programmation dans un langage de haut niveau telle qu'enseignée dans le cours LEPL1402.
Aims

At the end of this learning unit, the student is able to :

1
  • définir avec précision et utiliser à bon escient dans les programmes de taille moyenne les concepts¿clé de programmation;
  • définir les principaux paradigmes de la programmation concurrente (état partagé, passage de messages et concurrence déclarative), avec les concepts qu'ils contiennent et les propriétés qu'ils donnent aux programmes;
  • expliquer les relations (similitudes, différences) entre ces différents paradigmes ;
  • expliquer le lien entre les langages de programmation et les principaux paradigmes de programmation concurrente ;
  • écrire des programmes de taille moyenne dans ces paradigmes de programmation concurrente.
  • penser à l'aide d'abstractions (raisonner correctement sur un système qui comprend plusieurs couches d'abstractions, et définir de nouvelles abstractions pour simplifier la résolution d'un problème)
 

The contribution of this Teaching Unit to the development and command of the skills and learning outcomes of the programme(s) can be accessed at the end of this sheet, in the section entitled “Programmes/courses offering this Teaching Unit”.
Content
' paradigmes de programmation concurrente (état partagé, passage de messages et concurrence déclarative)
' Concepts majeurs de la programmation qui inclut fonction, objet, classe, abstraction, instantiation, héritage, état, encapsulation, concurrence, dataflow, évaluation paresseuse, non'déterminisme, agent (objet actif), verrou (lock), moniteur, transaction, interblocage (deadlock), programmation d'ordre supérieur, compositionnalité, etc.
' Techniques de raisonnement et de conception avec les différents paradigmes pour concevoir des programmes corrects
' Applications pratiques dans plusieurs domaines (par exemple, la simulation des circuits logiques, la simulation des ascenseurs, un gestionnaire de transactions).
Bibliography
Peter Van Roy et Seif Haridi, Concepts, Techniques, and Models of Computer Programming, MIT Press, 2004
Faculty or entity


Programmes / formations proposant cette unité d'enseignement (UE)

Title of the programme
Sigle
Credits
Prerequisites
Aims
Mineure en sciences de l'ingénieur : informatique

Mineure en sciences informatiques