Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/647540.730024guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Grammar Adaptation

Published: 12 March 2001 Publication History

Abstract

We employ transformations for the adaptation of grammars. Grammars need to be adapted in grammar development, grammar maintenance, grammar reengineering, and grammar recovery. Starting from a few fundamental transformation primitives and combinators, we derive an operator suite for grammar adaptation. Three groups of operators are identified, namely operators for refactoring, construction and destruction. While refactoring is semantics-preserving in the narrow sense, transformations for construction and destruction require the consideration of relaxed notions of semantics preservation based on other grammar relations than equality of generated languages. The consideration of semantics and accompanying preservation properties is slightly complicated by the fact that we cannot insist on reduced grammars.

References

[1]
J. Aycock and N. Horspool. Faster Generalized LR Parsing. In S. Jähnichen, editor, Proc. of the 8th International Conference on Compiler Construction (CC'99), volume 1575 of LNCS, pages 32-46. Springer-Verlag, 1999.
[2]
D. Blasband. Automatic Analysis of Ancient Languages. PhD thesis, Free University of Brussels, 2000.
[3]
M. Brand, M. Sellink, and C. Verhoef. Generation of components for software renovation factories from context-free grammars. Science of Computer Programming, 36(2-3):209-266, 2000.
[4]
R. D. Cameron. Extending context-free grammars with permutation phrases. ACM Letters on Programming Languages and Systems, 2(4):85-94, Mar. 1993.
[5]
E. Chikofsky and J. Cross. Reverse engineering and design recovery: A taxonomy. IEEE Software, 7(1):13-17, 1990.
[6]
M. de Jonge and J. Visser. Grammars as Contracts. In Proc. of GCSE 2000, LNCS, Erfurt, Germany, 2001. Springer-Verlag. to appear.
[7]
IBM Corporation. VS COBOL II Application Programming Language Reference, 1993. Release 4, Document number GC26-4047-07.
[8]
R. Lämmel and C. Verhoef. VS COBOL II Grammar Version 1.0.3. http://www.cwi.nl/~ralf/grammars, 1999-2001.
[9]
R. Lämmel and C. Verhoef. Semi-automatic Grammar Recovery. Submitted, available at http://www.cwi.nl/~ralf/, July 2000.
[10]
W. F. Opdyke. Refactoring Object-Oriented Frameworks. PhD thesis, University of Illinois at Urbana-Champaign, 1992.
[11]
H. A. Partsch. Specification and Transformation of Programs. Springer-Verlag, 1990.
[12]
A. Pettorossi and M. Proietti. Rules and Strategies for Transforming Functional and Logic Programs. ACM Computing Surveys, 28(2):360-414, June 1996.
[13]
J. J. Sarbo. Grammar transformations for optimizing backtrack parsers. Computer Languages, 20(2):89-100, May 1994.
[14]
M. Sellink and C. Verhoef. Development, assessment, and reengineering of language descriptions. In J. Ebert and C. Verhoef, editors, Proceedings of the Fourth European Conference on Software Maintenance and Reengineering, pages 151-160. IEEE Computer Society, March 2000.
[15]
D. S. Wile. Abstract syntax from concrete syntax. In Proc. of the 1997 International Conference on Software Engineering, pages 472-480. ACM Press, 1997.
[16]
D. S. Wile. Integrating Syntaxes and their Associated Semantics. Draft, 1999.

Cited By

View all
  • (2019)An empirical analysis of the transition from Python 2 to Python 3Empirical Software Engineering10.1007/s10664-018-9637-224:2(751-778)Online publication date: 1-Apr-2019
  • (2018)An industrial case study in compiler testing (tool demo)Proceedings of the 11th ACM SIGPLAN International Conference on Software Language Engineering10.1145/3276604.3276619(97-102)Online publication date: 24-Oct-2018
  • (2017)Quantifying the transition from python 2 to 3Proceedings of the 11th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement10.1109/ESEM.2017.45(314-323)Online publication date: 9-Nov-2017
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Guide Proceedings
FME '01: Proceedings of the International Symposium of Formal Methods Europe on Formal Methods for Increasing Software Productivity
March 2001
625 pages
ISBN:3540417915

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 12 March 2001

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 03 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2019)An empirical analysis of the transition from Python 2 to Python 3Empirical Software Engineering10.1007/s10664-018-9637-224:2(751-778)Online publication date: 1-Apr-2019
  • (2018)An industrial case study in compiler testing (tool demo)Proceedings of the 11th ACM SIGPLAN International Conference on Software Language Engineering10.1145/3276604.3276619(97-102)Online publication date: 24-Oct-2018
  • (2017)Quantifying the transition from python 2 to 3Proceedings of the 11th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement10.1109/ESEM.2017.45(314-323)Online publication date: 9-Nov-2017
  • (2016)A metamodel-based knowledge sharing system for disaster managementExpert Systems with Applications: An International Journal10.1016/j.eswa.2016.06.01863:C(49-65)Online publication date: 30-Nov-2016
  • (2015)Grammar ZooScience of Computer Programming10.1016/j.scico.2014.07.01098:P1(28-51)Online publication date: 1-Feb-2015
  • (2013)Semantic deltas for live DSL environmentsProceedings of the 1st International Workshop on Live Programming10.5555/2662726.2662736(35-38)Online publication date: 19-May-2013
  • (2013)Synthesis of sup-interpretationsTheoretical Computer Science10.1016/j.tcs.2012.11.003467(30-52)Online publication date: 1-Jan-2013
  • (2012)Negotiated grammar transformationProceedings of the 2012 Extreme Modeling Workshop10.1145/2467307.2467313(27-32)Online publication date: 1-Oct-2012
  • (2011)A framework for evolution of modelling languagesScience of Computer Programming10.1016/j.scico.2011.01.00276:12(1223-1246)Online publication date: 1-Dec-2011
  • (2010)An extensive catalog of operators for the coupled evolution of metamodels and modelsProceedings of the Third international conference on Software language engineering10.5555/1964571.1964585(163-182)Online publication date: 12-Oct-2010
  • Show More Cited By

View Options

View options

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media