Results 1 -
6 of
6
Understanding and Improving Object-Oriented Software Through Static Software Analysis
"... in the ..."
Applying software engineering techniques to parser design: the development of a C# parser
- In Proceedings of the 2002 conference of the South African institute of computer scientists and information technologists, pages 75– 82, 2002. In cooperation with ACM
, 2002
"... In this paper we describe the development of a parser for the C # programming language. We outline the development process used, detail its application to the development of a C # parser and present a number of metrics that describe the parser’s evolution. This paper presents and reinforces an argum ..."
Abstract
-
Cited by 5 (0 self)
- Add to MetaCart
In this paper we describe the development of a parser for the C # programming language. We outline the development process used, detail its application to the development of a C # parser and present a number of metrics that describe the parser’s evolution. This paper presents and reinforces an argument for the application of software engineering techniques in the area of parser design. The development of a parser for the C # programming language is in itself important to software engineering, since parsers form the basis for tools such as metrics generators, refactoring tools, pretty-printers and reverse engineering tools.
Design of Multilingual Retargetable Compilers: Experience of the XDS Framework Evolution
- In Proc. Joint Modular Languages Conference, JMLC’2000, Volume 1897 of LNCS
, 2000
"... The XDS framework has been developed since 1993. During this time, it has been serving as a production compiler construction framework as well as a base for research projects. Completely written in Oberon-2, XDS uses a mixed design technique amalgamating modular and object-oriented approaches. It co ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
The XDS framework has been developed since 1993. During this time, it has been serving as a production compiler construction framework as well as a base for research projects. Completely written in Oberon-2, XDS uses a mixed design technique amalgamating modular and object-oriented approaches. It combines advantages of both approaches, at the same time avoiding drawbacks inherent to each of them if used separately. In this paper we set out how the mixed design approach contributes to extensibility of the framework with respect to including support for new input languages and target architectures and implementing new optimizations. In the first part of the paper we give an overview of the XDS framework architecture emphasizing which parts are worth applying the object-oriented design. In the second part, we describe our experience of extending XDS with support for the Java language and implementing interprocedural and object-oriented optimizations.
A Modem Approach to Teaching Computer
, 2003
"... In the Computer Science curriculum, the compilers course is dying. It has been relegated to a "specialized, optional" role in the ACM 2001 curriculum. However, some fundamental topics are covered only in that course, such as syntax analysis, computer translation with applications outside compilation ..."
Abstract
- Add to MetaCart
In the Computer Science curriculum, the compilers course is dying. It has been relegated to a "specialized, optional" role in the ACM 2001 curriculum. However, some fundamental topics are covered only in that course, such as syntax analysis, computer translation with applications outside compilation, and language specification mechanisms such as regular expressions. In this paper, we present the outline of a completely reorganized and modernized course on computer translation. The approach resembles a spiral: topics are discussed repeatedly and in increasing depth, accompanied by implementation projects that ustrate them. We abandon the traditional goal of implementing a production compiler, as well as other topics that are too compilation-specffic. Applications are discussed in areas such as data mining and software engineering.
Object-Oriented Software Specification in Programming Language Design and Implementation
"... An object-oriented formal specification workbench is proposed for defining the syntax and semantics of programming languages, using which the formal properties of different languages can be elaborated and analyzed. Our specification approach is an object-oriented representation structured around a d ..."
Abstract
- Add to MetaCart
An object-oriented formal specification workbench is proposed for defining the syntax and semantics of programming languages, using which the formal properties of different languages can be elaborated and analyzed. Our specification approach is an object-oriented representation structured around a denotational semantics methodology, which abstracts out various common details so that formal syntax and semantics can be defined elegantly. Specific details can be inherited and specialized in defining the semantics of various programming languages, and the reusability and modifiability of many programming languages features can be manifested across language paradigms. Furthermore, prototype implementations for these languages may be automatically developed from the formal specifications, providing a mechanism for compiler/interpreter reuse at the specification level.

