Beyond contracts for concurrency

SCOOP is a concurrent programming language with a new semantics for contracts that applies equally well in concurrent and sequential contexts. SCOOP eliminates race conditions and atomicity violations by construction. However, it is still vulnerable to deadlocks. In this paper we describe how far co...

Celý popis

Uloženo v:
Podrobná bibliografie
Vydáno v:Formal aspects of computing Ročník 21; číslo 4; s. 319 - 346
Hlavní autoři: Ostroff, Jonathan S., Torshizi, Faraz Ahmadi, Huang, Hai Feng, Schoeller, Bernd
Médium: Journal Article Konferenční příspěvek
Jazyk:angličtina
Vydáno: London Springer-Verlag 01.08.2009
Springer
Association for Computing Machinery
Témata:
ISSN:0934-5043, 1433-299X
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Popis
Shrnutí:SCOOP is a concurrent programming language with a new semantics for contracts that applies equally well in concurrent and sequential contexts. SCOOP eliminates race conditions and atomicity violations by construction. However, it is still vulnerable to deadlocks. In this paper we describe how far contracts can take us in verifying interesting properties of concurrent systems using modular Hoare rules and show how theorem proving methods developed for sequential Eiffel can be extended to the concurrent case. However, some safety and liveness properties depend upon the environment and cannot be proved using the Hoare rules. To deal with such system properties, we outline a SCOOP Virtual Machine (SVM) as a fair transition system. The SVM makes it feasible to use model-checking and theorem proving methods for checking global temporal logic properties of SCOOP programs. The SVM uses the Hoare rules where applicable to reduce the number of steps in a computation.
Bibliografie:ObjectType-Article-1
SourceType-Scholarly Journals-1
content type line 14
ISSN:0934-5043
1433-299X
DOI:10.1007/s00165-008-0073-8