loading...
 This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
19th IEEE International Conference on Software Maintenance (ICSM'03)
Deriving tolerant grammars from a base-line grammar
Amsterdam, The Netherlands
September 22-September 26
ISBN: 0-7695-1905-9
Steven Klusener, Software Improvement Group; Vrije Universiteit
Ralf L?mmel, Vrije Universiteit; CWI
A grammar-based approach to tool development in re- and reverse engineering promises precise structure awareness, but it is problematic in two respects. Firstly, it is a considerable up-front investment to obtain a grammar for a relevant language or cocktail of languages. Existing work on grammar recovery addresses this concern to some extent. Secondly, it is often not feasible to insist on a precise grammar, e.g., when different dialects need to be covered. This calls for tolerant grammars.
In this paper, we provide a well-engineered approach to the derivation of tolerant grammars, which is based on previous work on error recovery, fuzzy parsing, and island grammars. The technology of this paper has been used in a complex Cobol restructuring project on several millions of lines of code in different Cobol dialects.
Our approach is founded on an approximation relation between a tolerant grammar and a base-line grammar which serves as a point of reference. Thereby, we avoid false positives and false negatives when parsing constructs of interest in a tolerant mode. Our approach accomplishes the effective derivation of a tolerant grammar from the syntactical structure that is relevant for a certain re- or reverse engineering tool. To this end, the productions for the constructs of interest are reused from the base-line grammar together with further productions that are needed for completion.
Citation:
Steven Klusener, Ralf L?mmel, "Deriving tolerant grammars from a base-line grammar," icsm, pp.179, 19th IEEE International Conference on Software Maintenance (ICSM'03), 2003
Usage of this product signifies your acceptance of the Terms of Use.