Sciweavers

POPL
2009
ACM
14 years 5 months ago
The semantics of x86-CC multiprocessor machine code
Multiprocessors are now dominant, but real multiprocessors do not provide the sequentially consistent memory that is assumed by most work on semantics and verification. Instead, t...
Susmit Sarkar, Peter Sewell, Francesco Zappa Narde...
POPL
2009
ACM
14 years 5 months ago
A calculus of atomic actions
We present a proof calculus and method for the static verification of assertions and procedure specifications in shared-memory concurrent programs. The key idea in our approach is...
Tayfun Elmas, Shaz Qadeer, Serdar Tasiran
POPL
2009
ACM
14 years 5 months ago
Proving that non-blocking algorithms don't block
A concurrent data-structure implementation is considered nonblocking if it meets one of three following liveness criteria: waitfreedom, lock-freedom, or obstruction-freedom. Devel...
Alexey Gotsman, Byron Cook, Matthew J. Parkinson, ...
POPL
2009
ACM
14 years 5 months ago
A cost semantics for self-adjusting computation
Self-adjusting computation is an evaluation model in which programs can respond efficiently to small changes to their input data by using a change-propagation mechanism that updat...
Ruy Ley-Wild, Umut A. Acar, Matthew Fluet
POPL
2009
ACM
14 years 5 months ago
The semantics of progress in lock-based transactional memory
Transactional memory (TM) is a promising paradigm for concurrent programming. Whereas the number of TM implementations is growing, however, little research has been conducted to p...
Rachid Guerraoui, Michal Kapalka
POPL
2009
ACM
14 years 5 months ago
Lazy evaluation and delimited control
The call-by-need lambda calculus provides an equational framework for reasoning syntactically about lazy evaluation. This paper examines its operational characteristics. By a seri...
Ronald Garcia, Andrew Lumsdaine, Amr Sabry
POPL
2009
ACM
14 years 5 months ago
Semi-sparse flow-sensitive pointer analysis
Pointer analysis is a prerequisite for many program analyses, and the effectiveness of these analyses depends on the precision of the pointer information they receive. Two major a...
Ben Hardekopf, Calvin Lin
POPL
2009
ACM
14 years 5 months ago
Masked types for sound object initialization
This paper presents a type-based solution to the long-standing problem of object initialization. Constructors, the conventional mechanism for object initialization, have semantics...
Xin Qi, Andrew C. Myers
POPL
2009
ACM
14 years 5 months ago
Flexible types: robust type inference for first-class polymorphism
We present HML, a type inference system that supports full firstclass polymorphism where few annotations are needed: only function parameters with a polymorphic type need to be an...
Daan Leijen
POPL
2009
ACM
14 years 5 months ago
Static contract checking for Haskell
Program errors are hard to detect and are costly both to programmers who spend significant efforts in debugging, and for systems that are guarded by runtime checks. Static verific...
Dana N. Xu, Simon L. Peyton Jones, Koen Claessen