• DocumentCode
    2703243
  • Title

    Parsing and semantic modelling for software engineering applications

  • Author

    Irwin, Warwick ; Cook, Carl ; Churcher, Neville

  • Author_Institution
    Dept. of Comput. Sci. & Software Eng., Canterbury Univ., Christchurch, New Zealand
  • fYear
    2005
  • fDate
    29 March-1 April 2005
  • Firstpage
    180
  • Lastpage
    189
  • Abstract
    The ability to parse source code, in order to extract information from it, is an essential element of software engineering research and practice. However, serious practical difficulties often arise from factors such as ambiguities in standard grammars and inflexible parsing tools. For example, substantial changes to standard grammars may be needed in order to meet the limitations of parsing engines; this threatens the accuracy, completeness and consistency of the information available. Good parsing on its own is not enough: an inadequate semantic model limits the information available to tool builders. In our work, we have developed an approach to parsing and semantic modelling which addresses issues such as these. Our approach is based on a more flexible LR parser generator which includes the use of generalised LR (GLR) parsing to accommodate ambiguous grammars. This allows us to decouple syntactic and semantic analysis. In this paper, we present our parser generator, yakyacc, and our semantic model for Java, JST, and discuss the benefits of their use in software engineering research. The resulting parsers may be used in a variety of contexts, either as the basis for integrated applications or as components in an application pipeline containing a number of other tools. We illustrate the benefits of our approach with representative examples from two of our current software engineering research projects.
  • Keywords
    Java; grammars; program compilers; programming language semantics; software engineering; JST; Java; generalised LR parsing; grammars; parsing tools; semantic modelling; software engineering; source code; yakyacc parser generator; Application software; Collaborative software; Computer languages; Computer science; Information analysis; Java; Pipelines; Software engineering; Software tools; Visualization;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering Conference, 2005. Proceedings. 2005 Australian
  • ISSN
    1530-0803
  • Print_ISBN
    0-7695-2257-2
  • Type

    conf

  • DOI
    10.1109/ASWEC.2005.36
  • Filename
    1402013