Negative Results for Equivalence Queries
Machine Learning
On the structural grammatical interference problem for some classes of context-free grammars
Information Processing Letters
Descriptional complexity of context-free grammar forms
Theoretical Computer Science
Inferring pure context-free languages from positive data
Acta Cybernetica
Stochastic Complexity in Statistical Inquiry Theory
Stochastic Complexity in Statistical Inquiry Theory
Semi-automatic grammar recovery
Software—Practice & Experience
Cracking the 500-Language Problem
IEEE Software
Can a parser be generated from examples?
Proceedings of the 2003 ACM symposium on Applied computing
Context-free grammar induction using genetic programming
ACM-SE 42 Proceedings of the 42nd annual Southeast regional conference
Towards the Automatic Evolution of Reengineering Tools
CSMR '05 Proceedings of the Ninth European Conference on Software Maintenance and Reengineering
An interactive method for extracting grammar from programs
Software—Practice & Experience - Research Articles
Extracting grammar from programs: brute force approach
ACM SIGPLAN Notices
A metrics suite for grammar-based software: Research Articles
Journal of Software Maintenance and Evolution: Research and Practice - Analyzing the Evolution of Large-Scale Software
Inferring context-free grammars for domain-specific languages
OOPSLA '05 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The Definitive ANTLR Reference: Building Domain-Specific Languages
The Definitive ANTLR Reference: Building Domain-Specific Languages
Goodness criteria for programming language grammar rules
ACM SIGPLAN Notices
Towards Machine Learning of Grammars and Compilers of Programming Languages
ECML PKDD '08 Proceedings of the European conference on Machine Learning and Knowledge Discovery in Databases - Part II
A bibliographical study of grammatical inference
Pattern Recognition
ICGI'06 Proceedings of the 8th international conference on Grammatical Inference: algorithms and applications
Inferring grammar rules of programming language dialects
ICGI'06 Proceedings of the 8th international conference on Grammatical Inference: algorithms and applications
A framework for analyzing programs written in proprietary languages
Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
Hi-index | 0.00 |
Major software vendors now offer software maintenance as service. Bug detection and removal are major tasks in the maintenance phase of the software life cycle. Vendors often rely on in-house built analysis tools for software fault localization. Programming language grammar is an absolute requirement for building such tools, especially for platforms which are built by third parties. However, the grammar may not be publicly available. Grammars obtained from language reference manuals are often not complete due to language evolution. Manual fixes of such a grammar is a cumbersome task, and requires special expertise. Grammar inference techniques have been traditionally used to infer grammar from the strings of a language, in the context of computational linguistic, but have not been successful in learning industry standard complex programming language grammars. In this paper we present a programming language grammar inference system, called Gramin, which is used to infer grammar from sample programs. Gramin employs various optimizations to make grammar inference practical in the domain of programming languages. We demonstrate the effectiveness of the Gramin system by inferring a programming language grammar used in industry, and not available in public domain.