Peter Van Roy

Université catholique de Louvain
Département d'Ingénierie Informatique
Catholic University of Louvain
Department of Computing Science and Engineering
Place Sainte Barbe, 2
B-1348 Louvain-la-Neuve, Belgium
Phone: (++32) (10) 47 83 74
Fax: (++32) (10) 45 03 45
E-mail: pvr@info.ucl.ac.be

“The only way to reach perfection is to venture a little way beyond it into imperfection.”
— Van Roy's corollary to Clarke's Second Law.

Centres d'intérêt scientifiques / Scientific interests

Cours enseignés cette année / Courses taught this year

Books and courses (livres et cours)

Programming textbook: Concepts, techniques, and models of computer programming

This textbook is designed for second-year to graduate courses in computer programming. It covers all major programming concepts, techniques, and paradigms in a unified framework. It is based on the kernel language approach, in which practical languages and paradigms are translated to simple kernel languages, which consist of small numbers of programmer-significant concepts. This shows the deep relationships between the paradigms and how to use them together.

The book is both practical and theoretically sound. It is full of practical techniques: there are more than a thousand programs and program fragments, all of which can be run on a computer using the Mozart Programming System. In addition, it gives a formal semantics for all concepts at a level that is usable by practicing programmers.

Highlights of the book include an in-depth treatment of concurrent programming (including dataflow, lazy evaluation, active objects, monitors, and transactions) and three areas where the advantages of its multiparadigm approach show up clearly: graphic user interface programming, distributed programming, and constraint programming.

Livre en français: Programmation: Concepts, techniques et modèles

Ce livre est une traduction partielle du précédent. Il couvre mon cours de deuxième année. Il vient avec deux suppléments: un logiciel Labo interactif édité par ScienceActive qui permet d'exécuter et de modifier tous les exemples, et un jeu complet de transparents.

Cours de première année: La programmation basée sur l'enrichissement progressif des micromondes multi-agents

The Mozart Programming System

Full release of FractaSketch 2.03 (FREE!)

Systèmes / Systems

Informations supplémentaires / Further information