• DocumentCode
    2853244
  • Title

    Building a Family of Compilers

  • Author

    Chae, Wonseok ; Blume, Matthias

  • Author_Institution
    Toyota Technol. Inst. at Chicago, Chicago, IL
  • fYear
    2008
  • fDate
    8-12 Sept. 2008
  • Firstpage
    307
  • Lastpage
    316
  • Abstract
    We have developed and maintained a set of closely related compilers. Although much of their code is duplicated and shared, they have been maintained separately because they are treated as different compilers. Even if they were merged together, the combined code would become too complicated to serve as the base for another extension. We describe our experience to address this problem by adopting the product line engineering paradigm to build a family of compilers. This paradigm encourages developers to focus on developing a set of compilers rather than on developing one particular compiler. We show engineering activities for a family of compilers from product line analysis through product line architecture design to product line component design. Then, we present how to build particular compilers from core assets resulting from the previous activities and how to take advantage of modern programming language technology to organize this task. Our experience demonstrates that the product line engineering as a developing paradigm can ease the construction of a family of compilers.
  • Keywords
    compiler generators; product development; software reusability; compilers; product line analysis; product line architecture design; product line component design; programming language technology; Buildings; Computer languages; Design engineering; Education; Maintenance engineering; Product design; Program processors; Software architecture; Software maintenance; Software systems; compilers; feature-oriented; module system; product line engineering; standard ml;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Product Line Conference, 2008. SPLC '08. 12th International
  • Conference_Location
    Limerick
  • Print_ISBN
    978-0-7695-3303-2
  • Type

    conf

  • DOI
    10.1109/SPLC.2008.28
  • Filename
    4626864