We present the techniques used in Concuerror, a systematic testing tool able to find and reproduce a wide class of concurrency errors in Erlang programs. We describe how we take advantage of the characteristics of Erlang's actor model of concurrency to selectively instrument the program under test and how we subsequently employ a stateless search strategy to systematically explore the state space of process interleaving sequences triggered by unit tests. To ameliorate the problem of combinatorial explosion, we propose a novel technique for avoiding process blocks and describe how we can effectively combine it with preemption bounding, a heuristic algorithm for reducing the number of explored interleaving sequences. We also briefly discuss i...
Stateless model checking is a technique for testing and verifying concurrent programs, based on expl...
Programming languages based on the actor model, such as Erlang, avoid some concurrency bugs by desig...
We address the problem of testing and debugging concurrent, distributed,Erlang applications. In conc...
Abstract—We present the techniques used in Concuerror, a systematic testing tool able to find and re...
This paper advocates the test-driven development of concurrent Erlang programs in order to detect ea...
We address the problem of testing and debugging concurrent, distributed Erlang applications. In conc...
We argue that runtime verification, in the guise of monitor-oriented programming, is a natural way h...
This paper presents an approach to verify safety properties of Erlang-style, higher-order concurrent...
Erlang is a functional language developed by Ericsson AB, in which concurrency belongs to the progra...
This paper discusses preliminary investigations on the behaviour of the error handling mechanisms in...
Concurrent programming is hard and prone to subtle errors. In this paper we present a static analysi...
Testing concurrent software is hard due to its non-deterministic behavior. Concurrency bugs triggeri...
Abstract. Concurrent programming is hard and prone to subtle errors. In this paper we present a stat...
143 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 2008.The third main contribution i...
International audienceProgramming languages based on the actor model, such as Erlang, avoid some con...
Stateless model checking is a technique for testing and verifying concurrent programs, based on expl...
Programming languages based on the actor model, such as Erlang, avoid some concurrency bugs by desig...
We address the problem of testing and debugging concurrent, distributed,Erlang applications. In conc...
Abstract—We present the techniques used in Concuerror, a systematic testing tool able to find and re...
This paper advocates the test-driven development of concurrent Erlang programs in order to detect ea...
We address the problem of testing and debugging concurrent, distributed Erlang applications. In conc...
We argue that runtime verification, in the guise of monitor-oriented programming, is a natural way h...
This paper presents an approach to verify safety properties of Erlang-style, higher-order concurrent...
Erlang is a functional language developed by Ericsson AB, in which concurrency belongs to the progra...
This paper discusses preliminary investigations on the behaviour of the error handling mechanisms in...
Concurrent programming is hard and prone to subtle errors. In this paper we present a static analysi...
Testing concurrent software is hard due to its non-deterministic behavior. Concurrency bugs triggeri...
Abstract. Concurrent programming is hard and prone to subtle errors. In this paper we present a stat...
143 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 2008.The third main contribution i...
International audienceProgramming languages based on the actor model, such as Erlang, avoid some con...
Stateless model checking is a technique for testing and verifying concurrent programs, based on expl...
Programming languages based on the actor model, such as Erlang, avoid some concurrency bugs by desig...
We address the problem of testing and debugging concurrent, distributed,Erlang applications. In conc...