Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
Flexible symbol table structures for compiling C++
Software—Practice & Experience
The annotated C++ reference manual
The annotated C++ reference manual
The C programming language
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Incremental analysis of real programming languages
Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation
Communications of the ACM
Communications of the ACM
Communications of the ACM
Advanced compiler design and implementation
Advanced compiler design and implementation
The Unified Modeling Language user guide
The Unified Modeling Language user guide
The Unified Modeling Language reference manual
The Unified Modeling Language reference manual
An approach for modeling the name lookup problem in the C++ programming lanaguage
SAC '00 Proceedings of the 2000 ACM symposium on Applied computing - Volume 2
Efficient Parsing for Natural Language: A Fast Algorithm for Practical Systems
Efficient Parsing for Natural Language: A Fast Algorithm for Practical Systems
Even faster generalized LR parsing
Acta Informatica
Debugging PHP using a C++ compiler
Dr. Dobb's Journal - Science & engineering computing
Programmer's toolchest: testing C++ compilers for ISO language conformance
Dr. Dobb's Journal
Metric-Based Analysis of Context-Free Grammars
IWPC '00 Proceedings of the 8th International Workshop on Program Comprehension
Current Parsing Techniques in Software Renovation Considered Harmful
IWPC '98 Proceedings of the 6th International Workshop on Program Comprehension
Parsing C++ Despite Missing Declarations
IWPC '99 Proceedings of the 7th International Workshop on Program Comprehension
Exploiting UML dynamic object modeling for the visualization of C++ programs
SoftVis '05 Proceedings of the 2005 ACM symposium on Software visualization
Toward an engineering discipline for grammarware
ACM Transactions on Software Engineering and Methodology (TOSEM)
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Journal of Systems and Software
A backtracking LR algorithm for parsing ambiguous context-dependent languages
CASCON '06 Proceedings of the 2006 conference of the Center for Advanced Studies on Collaborative research
Ensuring behavioural equivalence in test-driven porting
CASCON '06 Proceedings of the 2006 conference of the Center for Advanced Studies on Collaborative research
An infrastructure to support interoperability in reverse engineering
Information and Software Technology
A tool chain for reverse engineering C++ applications
Science of Computer Programming
Hi-index | 0.00 |
Software tools are fundamental to the comprehension, analysis, testing and debugging of application systems. A necessary first step in the development of many tools is the construction of a parser front-end that can recognize the implementation language of the system under development. In this paper, we describe our use of token decoration to facilitate recognition of ambiguous language constructs. We apply our approach to the C++ language since its grammar is replete with ambiguous derivations such as the declaration~expression and template-declaration/expression ambiguity. We describe our implementation of a parser front-end for C++, keystone, and we describe our results in decorating tokens for our test suite including the examples from Clause Three of the C++ standard. We are currently exploiting the keystone front-end to develop a taxonomy for implementation-based class testing and to reverse-engineer Unified Modeling Language (UML) class diagrams.