An Abstract Analysis Framework for Synchronous Concurrent Languages based on source–to–source Transformation

M. Alpuente, M.M. Gallardo, E. Pimentel, A. Villanueva
2008 Electronical Notes in Theoretical Computer Science  
A pretty wide range of concurrent programming languages have been developed over the years. Coming from different programming traditions, concurrent languages differ in many respects, though all share the common aspect to expose parallelism to programmers. In order to provide language level support to programming with more than one process, a few basic concurrency primitives are often combined to provide the main language constructs, sometimes making different assumptions. In this paper, we
more » ... yze the most common primitives and related semantics for the class of synchronous concurrent programming languages, i.e., languages with a global mechanism of processes synchronization. Then, we present a generic framework for approximating the semantics of the main constructs which applies to both, declarative as well as imperative concurrent programming languages. We determine the conditions which ensure the correctness of the approximation, so that the resulting abstract semantics safely supports program analysis and verification.
doi:10.1016/j.entcs.2008.03.072 fatcat:ta52xgnlkrg6xcmnfnz4mqoqiu