• DocumentCode
    994537
  • Title

    Tools for making impossible changes - experiences with a tool for transforming large Smalltalk programs

  • Author

    Roberts, D. ; Brant, J.

  • Author_Institution
    Univ. of Evansville, IN, USA
  • Volume
    151
  • Issue
    2
  • fYear
    2004
  • fDate
    4/5/2004 12:00:00 AM
  • Firstpage
    49
  • Lastpage
    56
  • Abstract
    In a commercial system, performing large, invasive changes, such as changing an entire infrastructure layer, is often impossible because development on a system cannot be halted for any significant amount of time. Performing such changes require tools that can perform mass transformations on the source code. One approach is to use tools that can do global search and replace on the entire program structure. However, simple text-based tools are too simplistic for program text. To make accurate changes in a large program the tool must be based on parsing the program text. The paper describes the requirements for such a tool, the shortcomings of this approach, and describes one such tool for the Smalltalk language. This tool, the Refactoring Browser Rewrite Engine, is based on pattern matching of parse trees. The paper then presents three case studies in the successful application of this tool in commercial settings and discusses the shortcomings of such an approach. "impossible adj. - 1 b felt to be incapable of being done, attained, or fulfiled : insuperably difficult. - Merriam-Webster Dictionary".
  • Keywords
    Smalltalk; grammars; pattern matching; software tools; Smalltalk language; infrastructure layer; parse tree; pattern matching; program text; refactoring browser rewrite engine tool;
  • fLanguage
    English
  • Journal_Title
    Software, IEE Proceedings -
  • Publisher
    iet
  • ISSN
    1462-5970
  • Type

    jour

  • DOI
    10.1049/ip-sen:20040078
  • Filename
    1301260