Abstract—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 ...
International audienceProgramming languages based on the actor model, such as Erlang, avoid some con...
The actor model is a model of concurrent programming that consists of concurrent entities called act...
Erlang's powerful communication model allows us to build high-level concurrent systems. These can, h...
We present the techniques used in Concuerror, a systematic testing tool able to find and reproduce a...
This paper advocates the test-driven development of concurrent Erlang programs in order to detect ea...
Erlang is a functional language developed by Ericsson AB, in which concurrency belongs to the progra...
Stateless model checking is a technique for testing and verifying concurrent programs, based on expl...
We address the problem of testing and debugging concurrent, distributed Erlang applications. In conc...
We address the problem of testing and debugging concurrent, distributed,Erlang applications. In conc...
Testing concurrent software is hard due to its non-deterministic behavior. Concurrency bugs triggeri...
143 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 2008.The third main contribution i...
This chapter discusses detectEr, an experimental runtime monitoring tool that can be used to formal...
Testing concurrent programs that accept data inputs is notoriously hard because, beside the large nu...
Testing concurrent programs that accept data inputs is no-toriously hard because, besides the large ...
Programming languages based on the actor model, such as Erlang, avoid some concurrency bugs by desig...
International audienceProgramming languages based on the actor model, such as Erlang, avoid some con...
The actor model is a model of concurrent programming that consists of concurrent entities called act...
Erlang's powerful communication model allows us to build high-level concurrent systems. These can, h...
We present the techniques used in Concuerror, a systematic testing tool able to find and reproduce a...
This paper advocates the test-driven development of concurrent Erlang programs in order to detect ea...
Erlang is a functional language developed by Ericsson AB, in which concurrency belongs to the progra...
Stateless model checking is a technique for testing and verifying concurrent programs, based on expl...
We address the problem of testing and debugging concurrent, distributed Erlang applications. In conc...
We address the problem of testing and debugging concurrent, distributed,Erlang applications. In conc...
Testing concurrent software is hard due to its non-deterministic behavior. Concurrency bugs triggeri...
143 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 2008.The third main contribution i...
This chapter discusses detectEr, an experimental runtime monitoring tool that can be used to formal...
Testing concurrent programs that accept data inputs is notoriously hard because, beside the large nu...
Testing concurrent programs that accept data inputs is no-toriously hard because, besides the large ...
Programming languages based on the actor model, such as Erlang, avoid some concurrency bugs by desig...
International audienceProgramming languages based on the actor model, such as Erlang, avoid some con...
The actor model is a model of concurrent programming that consists of concurrent entities called act...
Erlang's powerful communication model allows us to build high-level concurrent systems. These can, h...