63 research outputs found
An Overview of the Mjølner BETA System
The Mjølner BETA System is an integrated and interactive programming environment with support for industrial object oriented programming. The Mjølner BETA System is a result of the Scandinavian research project Mjølner. The integration of the various tools in the Mjølner BETA System is established by insisting that all tools in the system utilizes on single representation of the program. This representation is abstract syntax trees (ASTs). All manipulations of the ASTs by the various tools are done utilizing the metaprogramming system which defines an interface to the AST and ways to manipulate the AST
A Short Description of a Translator-Writing System (BOBS-System)
The paper itself is an abstract describing a translator-writing-system called the BOBS-System, which is an implementation of some of the ideas in the Ph. D. thesis of De Remer. This thesis describes closely the parsing techniques for the hierarchy of LR(k)-grammars. The main parts of the BOBS-System is described without many details
Teaching object-oriented programming using BETA
This paper describes the approach to teaching object-oriented programming at Aarhus University. This includes a brief discussion of the conceptual approach to teaching object-oriented programming. The BETA language is used as a basis for the teaching. The paper includes a brief description of BETA. Finally a presentation of the BETA Macintosh environment is given. This environment makes it easy for students to create object-oriented applications
On Defining Semantics by Means of Extended Attribute Grammars
The possibilities for defining predicate transformers, denotational semantics, and operational semantics by means of extended attribute grammars are treated. The approach to operational semantics consists of a set of attribute grammar rules that specifies the possible transformations upon a given program. A proposal for defining the domains of an attribute grammar within the formalism is given. It is also shown how an attribute grammar may be reformulated as a tree rewriting system. Finally an efficient evaluator that works for all attribute grammars (including some circular ones) is described. This evaluator constructs during a left-to-right scan of a linear representation of the parse tree (a right-parse) a directed (acyclic) graph that represents the values of the attributes at the root of the parse tree. The parse tree itself need not be constructed. During a (recursive) scan of this graph the attribute values may be evaluated
Object-oriented programming in the BETA programming language
distributed without the prior written permission of the author
An Object-Oriented Metaprogramming System
A number of tools in the Mjølner programming environment are metaprograms, i.e. programs that manipulate other programs. The metaprogramming system is grammar based in the sense that a metaprogramming tool may be generated from the grammar of any language. For each syntactic category of the language, a corresponding class is generated. The syntactic hierarchy of the grammar is mapped into a corresponding class hierarchy. This object-oriented representation of programs is further exploited by including a set of more general classes that view a program as an abstract syntax tree and by allowing the user to add semantic attributes in sub-classes
- …