• DocumentCode
    1089923
  • Title

    Design Patterns for Teaching Type Checking in a Compiler Construction Course

  • Author

    Ortin, Francisco ; Zapico, Daniel ; Cueva, Juan Manuel

  • Author_Institution
    Univ. of Oviedo, Oviedo
  • Volume
    50
  • Issue
    3
  • fYear
    2007
  • Firstpage
    273
  • Lastpage
    283
  • Abstract
    A course in compiler construction seeks to develop an understanding of well-defined fundamental theory and typically involves the production of a language processor. In a graduate degree in software engineering, the development of a compiler contributes significantly to the developer´s comprehension of the practical application of theoretical concepts. Different formal notations are commonly used to define type systems, and some of them are used to teach the semantic analysis phase of language processing. In the traditional approach, attribute grammars are probably the most widely used ones. This paper shows how object-oriented design patterns represented in unified modeling language (UML) can be used to both teach type systems and develop the semantic analysis phase of a compiler. The main benefit of this approach is two-fold: better comprehension of theoretical concepts because of the use of notations known by the students (UML diagrams), and improvement of software engineering skills for the development of a complete language processor.
  • Keywords
    Unified Modeling Language; computer science education; program compilers; software engineering; Unified Modeling Language; compiler construction course; language processor; semantic analysis; software engineering; teaching type checking; Application software; Computer languages; Computer science; Education; Object oriented programming; Pattern analysis; Production; Program processors; Software engineering; Unified modeling language; Compiler construction; design pattern; semantic analysis; software engineering; type checker; type system;
  • fLanguage
    English
  • Journal_Title
    Education, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0018-9359
  • Type

    jour

  • DOI
    10.1109/TE.2007.901983
  • Filename
    4287122