Yingzhou Zhang, Baowen Xu, Liang Shi, Bixin Li, Hongji Yang
{"title":"Modular monadic program slicing","authors":"Yingzhou Zhang, Baowen Xu, Liang Shi, Bixin Li, Hongji Yang","doi":"10.1109/CMPSAC.2004.1342807","DOIUrl":null,"url":null,"abstract":"Program slicing is widely used in applications such as program comprehension, software testing, debugging, measurement, and reengineering. This paper proposes a new approach for program slicing, called modular monadic slicing, basing on modular monadic semantics of the program analysed. We abstract the computation of program slicing as a language-independence entity: slice monad transformer. On the basis of this, we present and illustrate modular monadic dynamic and static slice algorithms in detail. We conclude that modular monadic slicing has excellent flexibility and reusability properties comparing with the existing program slicing algorithms. It computes program slices on abstract syntax directly without intermediate structures such as dependence graphs","PeriodicalId":355273,"journal":{"name":"Proceedings of the 28th Annual International Computer Software and Applications Conference, 2004. COMPSAC 2004.","volume":"42 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2004-09-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"12","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 28th Annual International Computer Software and Applications Conference, 2004. COMPSAC 2004.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CMPSAC.2004.1342807","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 12
Abstract
Program slicing is widely used in applications such as program comprehension, software testing, debugging, measurement, and reengineering. This paper proposes a new approach for program slicing, called modular monadic slicing, basing on modular monadic semantics of the program analysed. We abstract the computation of program slicing as a language-independence entity: slice monad transformer. On the basis of this, we present and illustrate modular monadic dynamic and static slice algorithms in detail. We conclude that modular monadic slicing has excellent flexibility and reusability properties comparing with the existing program slicing algorithms. It computes program slices on abstract syntax directly without intermediate structures such as dependence graphs