This was a shot representing some of the most important aspects in my Ph.D. dissertation.

In recent years, service- and process-oriented applications have rapidly become the norm for distributed enterprises and they have led to a number of new programming languages and standards, collectively referred to as communication-centred programming. These languages describe the order and the manner on how different participants collaborate in order to achieve a common business goal. Despite their adoption, languages and standards for communication-centred programming are still young and unstable, different vendors give their own interpretation of the paradigm, that discourages the adoption of them as standards, mostly due to the lack of a a solid, common theoretical foundation.

This Ph.D. dissertation present different but interrelated views for the specification of communication-centred programs: First, we can explore the different standpoints where interactions are described. They can be global *everybody knows everything*, or local *I only care about my actions*. While they both give a different outlook of a process, they are tightly coupled: the global view is what is usually provided as specification, and the local view is a necessary step towards a distributed implementation.

Second, we describe communication-centred programs on different styles: imperatively *I tell you the exact order of actions to follow*, or declaratively *I give you the constraints, you do the rest*. While imperative specifications have become the de-facto standard in the industry, declarative specifications give a broader set of implementations. This thesis presents ways on how to relate this four dimensions, providing an unified framework for analysis and specification of communication-centred programs.

The title of this thesis is: Foundations of Communication-Centred Programming: Calculi, Logic and Types.
Defended at the IT University of Copenhagen, May 2012.
More details on this thesis in

Finally, this is probably the first Ph.D. thesis using kizomba as a soundtrack :)

Loading more stuff…

Hmm…it looks like things are taking a while to load. Try again?

Loading videos…