Refactoring operators provide problemindependentrefactoring transformations on contextfreegrammars. Although their usage is not bound bysome particular class of refactoring problems, they donot provide efficient solutions for vast majority ofdomain-specific refactoring objectives, such as leftrecursion removal. In this paper we propose problemspecificgrammar refactoring operators, to which werefer as grammar refactoring patterns. We furtherpropose formal language for specification of grammarrefactoring patterns called pLERO (pattern Languageof Extended Refactoring operators), based on ourstructural model of context-free grammars, andgrammar metrics.
展开▼