srcML: An Infrastructure for the Exploration, Analysis, and Manipulation of Source Code: A Tool Demonstration
Authors:
- Michael L. CollardMCMichael L. Collard
- Michael John DeckerMDMichael John Decker
- Jonathan I. MaleticJMJonathan I. Maletic
- 1 September 2013
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- No. 10636773,p. 516-519
Abstract
SrcML is an XML representation for C/C++/Java source code that forms a platform for the efficient exploration, analysis, and manipulation of large software projects. The lightweight format allows for round-trip transformation from source to srcML and back to source with no loss of information or formatting. The srcML toolkit consists of the src2srcml tool for robust translation to the srcML format and the srcml2src tool for querying via XPath, and transformation via XSLT. In this demonstration a guide of these features is provided along with the use of XPath for constructing source-code queries and XSLT for conducting simple transformations.Keywords
This publication has 16 references indexed in Scilit:
- Lightweight Transformation and Fact Extraction with the srcML Toolkit2011
- RASCAL: A Domain Specific Language for Source Code Analysis and Manipulation2009
- High-fidelity C/C++ code transformationScience of Computer Programming, 2007
- Supporting source code difference analysis2004
- DMS/spl reg/: program transformations for practical scalable software evolution2004
- How understanding and restructuring differ from compiling -a rewriting perspective2004
- The documentary structure of source codeInformation and Software Technology, 2002
- CIL: Intermediate Language and Tools for Analysis and Transformation of C Programs2002
- Stratego: A Language for Program Transformation Based on Rewriting Strategies System Description of Stratego 0.52001
- JavaML: a markup language for Java source codeComputer Networks, 2000