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...
Uloženo v:
| Vydáno v: | Formal aspects of computing Ročník 21; číslo 4; s. 319 - 346 |
|---|---|
| Hlavní autoři: | , , , |
| 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!
|
| 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 |