Abstract. In the modern, multi-threaded, multi-core programming environment, correctly manag-ing system resources, including locks and shared variables, can be especially difficult and error-prone. A simple mistake, such as forgetting to release a lock, can have major consequences on the correct operation of a program, by, for example, inducing deadlock, often at a time and location that is isolated from the original error. In this paper, we propose a new type-based approach to resource management, based on the use of dependent types to construct a Domain-Specific Embedded Lan-guage (DSEL) whose typing rules directly enforce the formal program properties that we require. In this way, we ensure strong static guarantees of correctness-by-cons...
In this paper, we introduce a new type system based on linear typing, and show how it can be incorpo...
Writing concurrent applications is extremely challenging, not only in terms of producing bug-free an...
We present a refinement type system for reasoning about asynchronous programs manipulating shared mu...
In the modern, multi-threaded, multi-core programming environment, correctly managing system resourc...
Abstract. This paper presents an expressive specification and verifica-tion framework for ensuring d...
Abstract. We present a type-based deadlock-freedom verification for concurrent programs with non-blo...
We propose a type system to guarantee safe resource deal-location for shared-memory concurrent progr...
Since the early 2000s, in order to keep up with the performance predictions of Moore's law, hardware...
Locks are a frequently used synchronisation mechanism in shared memory concurrent programs. They ar...
Abstract. Type systems for programming languages help reasoning about program behavior and early fin...
With the introduction of multi-core CPUs, multi-threaded programming is becoming significantly more ...
This thesis proposes a typing discipline to control the migration of code in a distributed, mobile e...
Modern software systems rely on communication, for example mobile applcations communicating with a c...
Concurrent object-oriented programming languages coordinate conflicting memory accesses through lock...
Writing concurrent applications is extremely challenging, not only in terms of producing bug-free an...
In this paper, we introduce a new type system based on linear typing, and show how it can be incorpo...
Writing concurrent applications is extremely challenging, not only in terms of producing bug-free an...
We present a refinement type system for reasoning about asynchronous programs manipulating shared mu...
In the modern, multi-threaded, multi-core programming environment, correctly managing system resourc...
Abstract. This paper presents an expressive specification and verifica-tion framework for ensuring d...
Abstract. We present a type-based deadlock-freedom verification for concurrent programs with non-blo...
We propose a type system to guarantee safe resource deal-location for shared-memory concurrent progr...
Since the early 2000s, in order to keep up with the performance predictions of Moore's law, hardware...
Locks are a frequently used synchronisation mechanism in shared memory concurrent programs. They ar...
Abstract. Type systems for programming languages help reasoning about program behavior and early fin...
With the introduction of multi-core CPUs, multi-threaded programming is becoming significantly more ...
This thesis proposes a typing discipline to control the migration of code in a distributed, mobile e...
Modern software systems rely on communication, for example mobile applcations communicating with a c...
Concurrent object-oriented programming languages coordinate conflicting memory accesses through lock...
Writing concurrent applications is extremely challenging, not only in terms of producing bug-free an...
In this paper, we introduce a new type system based on linear typing, and show how it can be incorpo...
Writing concurrent applications is extremely challenging, not only in terms of producing bug-free an...
We present a refinement type system for reasoning about asynchronous programs manipulating shared mu...