author = {Neamtiu, Iulian and Foster, Jeffrey S. and Hicks, Michael},
title = {Understanding source code evolution using abstract syntax tree matching},
year = {2005},
isbn = {1595931236},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/1083142.1083143},
doi = {10.1145/1083142.1083143},
abstract = {Mining software repositories at the source code level can provide a greater understanding of how software evolves. We present a tool for quickly comparing the source code of different versions of a C program. The approach is based on partial abstract syntax tree matching, and can track simple changes to global variables, types and functions. These changes can characterize aspects of software evolution useful for answering higher level questions. In particular, we consider how they could be used to inform the design of a dynamic software updating system. We report results based on measurements of various versions of popular open source programs. including BIND, OpenSSH, Apache, Vsftpd and the Linux kernel.},
booktitle = {Proceedings of the 2005 International Workshop on Mining Software Repositories},
author = {Neamtiu, Iulian and Foster, Jeffrey S. and Hicks, Michael},
title = {Understanding source code evolution using abstract syntax tree matching},
year = {2005},
issue_date = {July 2005},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
volume = {30},
number = {4},
issn = {0163-5948},
url = {https://doi.org/10.1145/1082983.1083143},
doi = {10.1145/1082983.1083143},
abstract = {Mining software repositories at the source code level can provide a greater understanding of how software evolves. We present a tool for quickly comparing the source code of different versions of a C program. The approach is based on partial abstract syntax tree matching, and can track simple changes to global variables, types and functions. These changes can characterize aspects of software evolution useful for answering higher level questions. In particular, we consider how they could be used to inform the design of a dynamic software updating system. We report results based on measurements of various versions of popular open source programs. including BIND, OpenSSH, Apache, Vsftpd and the Linux kernel.},
title = {An object oriented approach to constructing recursive descent parsers},
year = {2000},
issue_date = {Feb.2000},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
volume = {35},
number = {2},
issn = {0362-1340},
url = {https://doi.org/10.1145/345105.345113},
doi = {10.1145/345105.345113},
abstract = {We discuss a technique to construct a recursive descent parser for a context free language using concepts found in object oriented design and implementation. A motivation for the technique is given. The technique is then introduced with snippets of a Smalltalk implementation. Some advantages and disadvantages of the technique are examined. Finally some areas of possible future work are discussed.},