Document details

Type inference for conversation types

Author(s): Lourenço, Maria Luísa Sobreira Gouveia

Date: 2009

Persistent ID: http://hdl.handle.net/10362/3960

Origin: Repositório Institucional da UNL

Subject(s): Service-oriented computing; Type systems; Type inference; Conversations; Conversation types


Description

Trabalho apresentado no âmbito do Mestrado em Engenharia Informática, como requisito parcial para obtenção do grau de Mestre em Engenharia Informática

This dissertation tackles the problem of type inference for conversation types by devising and implementing a type inference algorithm. This is an interesting issue to address if we take into account that service-oriented applications can have very rich and complex protocols of services’usage, thus requiring the programmer to annotate every service invocation with a type corresponding to his role in a protocol, which would make the development of such applications quite unpractical. Therefore, freeing the programmer from that task, by having inference of types that describe such protocols, is quite desirable not only because it is cumbersome and tedious to do such annotations but also because it reduces the occurrences of errors when developing real complex systems. While there is several work done related to session types and type inference in the context of binary sessions, work regarding multiparty conversations is still lacking even though there are some proposals related to multi-session conversations(i.e. interactions happen through shared channels that are distributed at service invocation time to all participants). Our approach is based on Conversation Calculus, a process calculus that models services’primitives based on conversations access point where all the interactions of a conversation take place. In order to test our type inference algorithm we designed and implemented a prototype of a proof of-concept distributed programming language based on Conversation Calculus. Finally, we show that our type inference algorithm is sound, complete, decidable and that it always returns a principal typing.

Document Type Master thesis
Language English
Advisor(s) Caires, Luís
Contributor(s) RUN
facebook logo  linkedin logo  twitter logo 
mendeley logo

Related documents