A proof system for concurrent ADA programs
Science of Computer Programming
MULTILISP: a language for concurrent symbolic computation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Object-oriented concurrent programming ABCL/1
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Actors: a conceptual foundation for concurrent object-oriented programming
Research directions in object-oriented programming
Promises: linguistic support for efficient asynchronous procedure calls in distributed systems
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
The revised report on the syntactic theories of sequential control and state
Theoretical Computer Science
Active object: an object behavioral pattern for concurrent programming
Pattern languages of program design 2
ACM SIGPLAN Notices
Concurrent programming in ML
Monitors: an operating system structuring concept
Communications of the ACM
Featherweight Java: a minimal core calculus for Java and GJ
ACM Transactions on Programming Languages and Systems (TOPLAS)
Maude: specification and programming in rewriting logic
Theoretical Computer Science - Rewriting logic and its applications
The incremental garbage collection of processes
Proceedings of the 1977 symposium on Artificial intelligence and programming languages
Asynchronous and deterministic objects
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proof-theoretic foundations for the design of actor systems
Mathematical Structures in Computer Science
The semantics of future and an application
Journal of Functional Programming
Concepts, Techniques, and Models of Computer Programming
Concepts, Techniques, and Models of Computer Programming
Verification of Concurrent Objects with Asynchronous Method Calls
SWSTE '05 Proceedings of the IEEE International Conference on Software - Science, Technology & Engineering
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
An assertion-based proof system for multithreaded Java
Theoretical Computer Science - Formal methods for components and objects
A concurrent lambda calculus with futures
Theoretical Computer Science - Applied semantics
Creol: a type-safe object-oriented model for distributed concurrent systems
Theoretical Computer Science - Components and objects
FM '08 Proceedings of the 15th international symposium on Formal Methods
CoBoxes: Unifying Active Objects and Structured Heaps
FMOODS '08 Proceedings of the 10th IFIP WG 6.1 international conference on Formal Methods for Open Object-Based Distributed Systems
Testing Concurrent Objects with Application-Specific Schedulers
Proceedings of the 5th international colloquium on Theoretical Aspects of Computing
Minimal Ownership for Active Objects
APLAS '08 Proceedings of the 6th Asian Symposium on Programming Languages and Systems
Active Objects and Distributed Components: Theory and Implementation
Formal Methods for Components and Objects
Asynchronous sequential processes
Information and Computation
COORDINATION '09 Proceedings of the 11th International Conference on Coordination Models and Languages
Dynamic Symbolic Execution of Distributed Concurrent Objects
FMOODS '09/FORTE '09 Proceedings of the Joint 11th IFIP WG 6.1 International Conference FMOODS '09 and 29th IFIP WG 6.1 International Conference FORTE '09 on Formal Techniques for Distributed Systems
Dynamic Symbolic Execution for Testing Distributed Objects
TAP '09 Proceedings of the 3rd International Conference on Tests and Proofs
Modeling and Testing Multi-Threaded Asynchronous Systems with Creol
Electronic Notes in Theoretical Computer Science (ENTCS)
Intra-Object versus Inter-Object: Concurrency and Reasoning in Creol
Electronic Notes in Theoretical Computer Science (ENTCS)
Functional Active Objects: Typing and Formalisation
Electronic Notes in Theoretical Computer Science (ENTCS)
Transparent First-class Futures and Distributed Components
Electronic Notes in Theoretical Computer Science (ENTCS)
Dynamic Classes: Modular Asynchronous Evolution of Distributed Concurrent Objects
FM '09 Proceedings of the 2nd World Congress on Formal Methods
Modeling and Analysis of Thread-Pools in an Industrial Communication Platform
ICFEM '09 Proceedings of the 11th International Conference on Formal Engineering Methods: Formal Methods and Software Engineering
A Verification System for Distributed Objects with Asynchronous Method Calls
ICFEM '09 Proceedings of the 11th International Conference on Formal Engineering Methods: Formal Methods and Software Engineering
Writing concurrent desktop applications in an actor-based programming model
Proceedings of the 3rd International Workshop on Multicore Software Engineering
Asynchronous Components with Futures: Semantics and Proofs in Isabelle/HOL
Electronic Notes in Theoretical Computer Science (ENTCS)
Resource Modeling for Timed Creol Models
Electronic Notes in Theoretical Computer Science (ENTCS)
JCoBox: generalizing active objects to concurrent components
ECOOP'10 Proceedings of the 24th European conference on Object-oriented programming
Dating concurrent objects: real-time modeling and schedulability analysis
CONCUR'10 Proceedings of the 21st international conference on Concurrency theory
Dynamic resource reallocation between deployment components
ICFEM'10 Proceedings of the 12th international conference on Formal engineering methods and software engineering
Validating timed models of deployment components with parametric concurrency
FoVeOOS'10 Proceedings of the 2010 international conference on Formal verification of object-oriented software
Models of Rate Restricted Communication for Concurrent Objects
Electronic Notes in Theoretical Computer Science (ENTCS)
Simulating concurrent behaviors with worst-case cost bounds
FM'11 Proceedings of the 17th international conference on Formal methods
COORDINATION'11 Proceedings of the 13th international conference on Coordination models and languages
Analysis of deadlocks in object groups
FMOODS'11/FORTE'11 Proceedings of the joint 13th IFIP WG 6.1 and 30th IFIP WG 6.1 international conference on Formal techniques for distributed systems
First class futures: specification and implementation of update strategies
Euro-Par 2010 Proceedings of the 2010 conference on Parallel processing
Compositional random testing using extended symbolic transition systems
ICTSS'11 Proceedings of the 23rd IFIP WG 6.1 international conference on Testing software and systems
COSTABS: a cost and termination analyzer for ABS
PEPM '12 Proceedings of the ACM SIGPLAN 2012 workshop on Partial evaluation and program manipulation
The VerCors project: setting up basecamp
PLPV '12 Proceedings of the sixth workshop on Programming languages meets program verification
Dependence analysis for safe futures
Science of Computer Programming
A proof system for a PGAS language
Concurrency, Compositionality, and Correctness
Concurrency, Compositionality, and Correctness
Cost analysis of concurrent OO programs
APLAS'11 Proceedings of the 9th Asian conference on Programming Languages and Systems
Symbolic execution of concurrent objects in CLP
PADL'12 Proceedings of the 14th international conference on Practical Aspects of Declarative Languages
ABS: a core language for abstract behavioral specification
FMCO'10 Proceedings of the 9th international conference on Formal Methods for Components and Objects
A component model for the ABS language
FMCO'10 Proceedings of the 9th international conference on Formal Methods for Components and Objects
Variability modelling in the ABS language
FMCO'10 Proceedings of the 9th international conference on Formal Methods for Components and Objects
Securing the future: an information flow analysis of a distributed OO language
SOFSEM'12 Proceedings of the 38th international conference on Current Trends in Theory and Practice of Computer Science
ASPfun: A typed functional active object calculus
Science of Computer Programming
Isolating determinism in multi-threaded programs
RV'11 Proceedings of the Second international conference on Runtime verification
A system for compositional verification of asynchronous objects
Science of Computer Programming
FoVeOOS'11 Proceedings of the 2011 international conference on Formal Verification of Object-Oriented Software
A formal model of user-defined resources in resource-restricted deployment scenarios
FoVeOOS'11 Proceedings of the 2011 international conference on Formal Verification of Object-Oriented Software
Analysis of may-happen-in-parallel in concurrent objects
FMOODS'12/FORTE'12 Proceedings of the 14th joint IFIP WG 6.1 international conference and Proceedings of the 32nd IFIP WG 6.1 international conference on Formal Techniques for Distributed Systems
Compositional reasoning about shared futures
SEFM'12 Proceedings of the 10th international conference on Software Engineering and Formal Methods
Modeling resource-aware virtualized applications for the cloud in real-time ABS
ICFEM'12 Proceedings of the 14th international conference on Formal Engineering Methods: formal methods and software engineering
User-defined schedulers for real-time concurrent objects
Innovations in Systems and Software Engineering
Concurrent object-oriented programming with agent-oriented abstractions: the ALOO approach
Proceedings of the 2013 workshop on Programming based on actors, agents, and decentralized control
Hi-index | 0.00 |
We present the semantics and proof system for an object-oriented language with active objects, asynchronous method calls, and futures. The language, based on Creol, distinguishes itself in that unlike active object models, it permits more than one thread of control within an object, though, unlike Java, only one thread can be active within an object at a given time and rescheduling occurs only at specific release points. Consequently, reestablishing an object's monitor invariant is possible at specific well-defined points in the code. The resulting proof system shows that this approach to concurrency is simpler for reasoning than, say, Java's multithreaded concurrency model. From a methodological perspective, we identify constructs which admit a simple proof system and those which require, for example, interference freedom tests.