Modular Monadic Slicing of Concurrent Programs

Y. Zhang, B. Xu, and J. Qian (PRC)


Modular Monadic Semantics, Program Slicing, Concurrency, Slice Monad Transformer


Program slicing is a useful analysis technique for programs with many software engineering applications. This paper proposes a new approach for program slicing, called modular monadic slicing because it is based on modular monadic semantics. It first abstracts the computation of program slicing as a language-independence object: slice monad transformer. It then discusses modular monadic static slice algorithm in detail, allowing static slices to be computed directly on abstract syntax, without the needs to explicitly construct intermediate structures such as dependence graphs or to record an execution history. Finally, it considers static slicing for concurrent programs with the help of an existing concurrent monad transformer. It concludes that our algorithm has very simplicity and excellent flexibility properties comparing with the existing slicing algorithms.

Important Links:

Go Back