Effective typestate verification in the presence of aliasing

SJ Fink, E Yahav, N Dor, G Ramalingam… - ACM Transactions on …, 2008 - dl.acm.org
This article addresses the challenge of sound typestate verification, with acceptable
precision, for real-world Java programs. We present a novel framework for verification of …

Using types to enforce architectural structure

J Aldrich - Seventh Working IEEE/IFIP Conference on Software …, 2008 - ieeexplore.ieee.org
The right software architecture is critical to achieving essential quality attributes, but these
qualities are only realized if the program as implemented conforms to its intended …

Functional translation of a calculus of capabilities

A Charguéraud, F Pottier - Proceedings of the 13th ACM SIGPLAN …, 2008 - dl.acm.org
Reasoning about imperative programs requires the ability to track aliasing and ownership
properties. We present a type system that provides this ability, by using regions, capabilities …

A type system for observational determinism

T Terauchi - 2008 21st IEEE Computer Security Foundations …, 2008 - ieeexplore.ieee.org
Zdancewic and Myers introduced observational determinism as a scheduler independent
notion of security for concurrent programs. This paper proposes a type system for verifying …

Separation logic contracts for a Java-like language with fork/join

C Haack, C Hurlin - … Conference on Algebraic Methodology and Software …, 2008 - Springer
We adapt a variant of permission-accounting separation logic to a concurrent Java-like
language with fork/join. To support both concurrent reads and information hiding, we …

Persisted specifications of method pre-and post-conditions for static checking

RA Deline, MA Fahndrich - US Patent 7,421,680, 2008 - Google Patents
40 simplest end of the range, a specifier can mark those methods that allocate and release
resource (s). A specifier can also limit the order in which an objects methods may be called …

A capability calculus for concurrency and determinism

T Terauchi, A Aiken - ACM Transactions on Programming Languages …, 2008 - dl.acm.org
This article presents a static system for checking determinism (technically, partial
confluence) of communicating concurrent processes. Our approach automatically detects …

Local reasoning about a copying garbage collector

N Torp-Smith, L Birkedal, JC Reynolds - ACM Transactions on …, 2008 - dl.acm.org
We present a programming language, model, and logic appropriate for implementing and
reasoning about a memory management system. We state semantically what is meant by …

A type system with usage aspects

D Aspinall, M Hofmann, M Konečný - Journal of Functional …, 2008 - cambridge.org
Linear typing schemes can be used to guarantee non-interference and so the soundness of
in-place update with respect to a functional semantics. But linear schemes are restrictive in …

Witnessing side effects

T Terauchi, A Aiken - ACM Transactions on Programming Languages …, 2008 - dl.acm.org
We present a new approach to the old problem of adding global mutable state to purely
functional languages. Our idea is to extend the language with “witnesses,” which is based …