Personal tools



Jump to: navigation, search

Master thesis

Title Linguagem concurrent Contract-Java
Author Pedro Loura Barros
School Universidade de Aveiro
Month December
Year 2016
Advisor Miguel Oliveira e Silva
Group Biomedical Informatics and Technologies
Group (before 2015)

The goal of this thesis is the study on the integration of mechanisms from concurrent programming, objected-oriented languages, and Design-by-Contract. We propose a new language, Concurrent Contract-Java (CCJava), that's an extension of Contract-Java, a language that has extended Java with Design-by-Contract language mechanisms. CCJava aims to ease object-oriented concurrent programming, ensuring safety (no race conditions will occur) and abstracting away lower level concurrent realizations such as the choice for shared object synchronization schemes. It reuses the semantics of Java mechanisms, together with the semantics of objects and Design-by-Contract constructs, providing simple and expressive language mechanisms for concurrency. CCJava guarantees all aspects of a shared object's concurrent utilization and thread creation, using only two new language keywords: shared, and remote. A compiler was developed implementing the more important language mechanisms, and used as a proof of concept of our proposals.