Model checking higher-order programs

N Kobayashi - Journal of the ACM (JACM), 2013 - dl.acm.org
We propose a novel verification method for higher-order functional programs based on
higher-order model checking, or more precisely, model checking of higher-order recursion …

Programming with permissions in Mezzo

F Pottier, J Protzenko - ACM SIGPLAN Notices, 2013 - dl.acm.org
We present Mezzo, a typed programming language of ML lineage. Mezzo is equipped with a
novel static discipline of duplicable and affine permissions, which controls aliasing and …

Enabledness-based program abstractions for behavior validation

GD Caso, V Braberman, D Garbervetsky… - ACM Transactions on …, 2013 - dl.acm.org
Code artifacts that have nontrivial requirements with respect to the ordering in which their
methods or procedures ought to be called are common and appear, for instance, in the form …

Syntactic soundness proof of a type-and-capability system with hidden state

F Pottier - Journal of functional programming, 2013 - cambridge.org
This paper presents a formal definition and machine-checked soundness proof for a very
expressive type-and-capability system, that is, a low-level type system that keeps precise …

Detecting data race and atomicity violation via typestate-guided static analysis

Y Yang, A Gringauze, D Wu, HK Rohde - US Patent 8,510,722, 2013 - Google Patents
Annotation variable in a state-dependent operation While the simulated state of the variable
is in the special state may lead to an error, and the analysis may generate a Warning …

PLDI 2002: Extended static checking for Java

C Flanagan, KRM Leino, M Lillibridge, G Nelson… - ACM Sigplan …, 2013 - dl.acm.org
Software development and maintenance are costly endeavors. The cost can be reduced if
more software defects are detected earlier in the development cycle. This paper introduces …

Experience report: applying random testing to a base type environment

V St-Amour, N Toronto - Proceedings of the 18th ACM SIGPLAN …, 2013 - dl.acm.org
As programmers, programming in typed languages increases our confidence in the
correctness of our programs. As type system designers, soundness proofs increase our …

Alias control for deterministic parallelism

RL Bocchino Jr - Aliasing in Object-Oriented Programming. Types …, 2013 - Springer
A parallel program is deterministic if it produces the same output on every execution with a
given input, regardless of the parallel schedule chosen. Determinism makes parallel …

Resco: Automatic collection of leaked resources

Z Dai, X Mao, Y Lei, X Wan, K Ben - IEICE TRANSACTIONS on …, 2013 - search.ieice.org
A garbage collector relieves programmers from manual memory management and improves
productivity and program reliability. However, there are many other finite system resources …

[图书][B] Nested Refinement Types for JavaScript

R Chugh - 2013 - search.proquest.com
Decades of research on type systems have led to advances in the kinds of programming
features that can be reasoned about and the kinds of errors that can be prevented …