{"title":"A comparative evaluation of techniques for syntactic level source code analysis","authors":"Anthony Cox, C. Clarke","doi":"10.1109/APSEC.2000.896710","DOIUrl":null,"url":null,"abstract":"Many program maintenance tools rely on traditional parsing techniques to obtain syntactic level models of the code being maintained. When, for some reason, code cannot be parsed, software maintainers are forced to fall back on ad hoc tools and techniques, such as grep. As an alternative, hierarchical lexical analysis augmented with simple data structures can be used to extract an approximation of the abstract syntax for a source file. Experiments indicate that such an approach is feasible and produces results comparable to those obtained using a parser.","PeriodicalId":404621,"journal":{"name":"Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000","volume":"18 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2000-12-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"15","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/APSEC.2000.896710","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 15
Abstract
Many program maintenance tools rely on traditional parsing techniques to obtain syntactic level models of the code being maintained. When, for some reason, code cannot be parsed, software maintainers are forced to fall back on ad hoc tools and techniques, such as grep. As an alternative, hierarchical lexical analysis augmented with simple data structures can be used to extract an approximation of the abstract syntax for a source file. Experiments indicate that such an approach is feasible and produces results comparable to those obtained using a parser.