40 citations found. Retrieving documents...
M. Reiser and N. Wirth, Programming in Oberon: steps beyond Pascal and Modula, ACM Press, New York, 1992. 17

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

A Higher-order Module Discipline with Separate.. - Duchier.. (1998)   (2 citations)  (Correct)

....names. Dynamic linking [4] is a scheme, where execution starts with a single compiled module definition and further module definitions are loaded and installed only once they are needed. The same module definition can be used by many different applications. Modula 2 [16] Modula 3 [10] Oberon [13], Objective Caml [8] and Java [2] are examples of languages that support modules and separate compilation. Oberon and Java also support dynamic linking. A module definition specifies a function that takes modules as arguments and returns a module. This observation relates module definitions to ....

M. Reiser and N. Wirth. Programming in Oberon: Steps beyond Pascal and Modula. Addison-Wesley, New York, 1992.


The nesC Language: A Holistic Approach to Networked.. - Gay, Levis, von Behren (2003)   (46 citations)  (Correct)

....by multihop routing) Note that inlining increases code size slightly for only two components TimerM and AbsoluteTimerM but reduces or eliminates many others, leading to an overall reduction in footprint. 5. RELATED WORK The module systems of languages such as Modula 2 (plus descendants) [12, 52, 53] and Ada [20] explicitly import and export interfaces. However these systems are less flexible than nesC, as there is no explicit binding of interfaces: an exported interface I is automatically linked to all importers of I . Standard ML s module system offers similar functionality to nesC, except ....

N. Wirth and M. Reiser. Programming in Oberon - Steps Beyond Pascal and Modula. Addison-Wesley, 1992. ISBN 0-201-56543-9.


Active Oberon Language Report - Reali   (Correct)

.... Oberon Language Report Patrik Reali Institut fur Computersysteme, ETH Zurich reali inf.ethz.ch March 14, 2002 1 Introduction Active Oberon is an extension of the original Oberon language [28, 29]. Its purpose is to introduce features into the language to express concurrency by means of active objects. This report assumes that you already know Oberon; only the extensions to it are described here. The design of the language extension has been driven by the search for unification and ....

N. Wirth and M. Reiser. Programming in Oberon - Steps Beyond Pascal and Modula. Addison-Wesley, first edition, 1992.


Structuring a Compiler with Active Objects - Reali (2000)   (1 citation)  (Correct)

....a common shared data structure; section 5 discusses a new problem introduced in the compiler by the parallelism: deadlock; section 7 then draws the conclusions of this work. 2 Active Objects in Oberon This section recapitulates the Active Oberon language [7] an extension of the Oberon language [16, 18]; it is a homogeneous integrated concurrent programming language that embeds concurrency support in Oberon, by making just minimal additions to the language and creating a unified framework for concurrent, object oriented programming. This is done by introducing concurrent activities, protected ....

N. Wirth and M. Reiser. Programming in Oberon - Steps Beyond Pascal and Modula. Addison-Wesley, first edition, 1992.


Dynamic Object Replacement and Implementation-Only Classes - Costanza (2001)   (3 citations)  (Correct)

....the old object s class type. 4. 4 The with Statement In order to conveniently express cascaded method calls to the same variable in the presence of implementationonly classes, GILGUL introduces a with statement that is reminiscent of the similar statement in the programming language Oberon [16]. In GILGUL, it can be used as follows: with (obj instanceof D) Its effect is that obj is regarded as an instance of the respective class for the scope of the following (block) statement. The type given in the with condition can be any interface or class type, including the type of an ....

M. Reiser and N. Wirth. Programming in Oberon -- Steps Beyond Pascal and Modula. Addison-Wesley, 1992.


Fast, Accurate Call Graph Profiling - Spivey   (Correct)

....is active, it is possible to generate a profile just for those routines and their descendants. 5 Implementation We have made two implementations of the profiling scheme we have described. The first was part of a bytecode based implementation of Niklaus Wirth s programming language Oberon 2 [10, 12, 14]. It is easy to add a counter to the bytecode interpreter that is incremented for each instruction executed, thus providing a cycle counter in firmware. More recently, Andreas Sorensen and the author have made an implementation that can be used as a drop in replacement for gprof under Linux. It ....

M. Reiser and N. Wirth, Programming in Oberon: steps beyond Pascal and Modula, ACM Press, New York, 1992.


An Object Oriented Approach to Parser Generation in C++ - Cosgrave, Power, Waldron (2000)   (Correct)

....the decisions must be made between alternatives. By constructing and iterating a PredictVisitor and then supplying this for use in a ParseVisitor, we achieve an effect similar to memoising in functional languages. To test the system, we prepared a grammar for the programming language Oberon 2 [16], which was chosen as it represented a non trivial real world programming language, without the inherent contextsensitivity or ambiguities of languages such as C or C . Apart from left recursion elimination, which is essential to all left to right top down parsers, very little grammar ....

....such as C or C . Apart from left recursion elimination, which is essential to all left to right top down parsers, very little grammar manipulation was needed, since our system allows for the use of all the usual EBNF constructs. As test cases we used the sample code available from four texts, [11, 14, 15, 16], comprising some 23,000 lines of Oberon 2 code in total. The testing phase threw up relatively few errors in the parsing code. Since the system had been tested and debugged for the easier GFA problems of PRODUCTIVE and REACHABLE , most of the issues relating to the implementation of the Visitor ....

N. Wirth and M. Reiser. Programming in Oberon - Steps Beyond Pascal and Modula. Addison-Wesley, 1992. 8


The FracPECE Subroutine for the Numerical Solution of.. - Diethelm, Freed   (Correct)

....not consist of fractional differential equations only, but that first order differential equations are contained too. This has imposed the requirement to find coherent schemes for both types of differential equations. The subroutine package has been implemented in the programming language Oberon [8, 22] in an object oriented manner. The structure of this paper is as follows. We begin by introducing the mathematical model of viscoplasticity that we want to analyze. In particular, we state the fractional differential equations that we want to solve. Together with some necessary mathematical ....

Wirth N., Reiser M. (1992) Programming in Oberon --- Steps Beyond Pascal and Modula2. Addison-Wesley, Reading 71


Enhanced Control and Data Flow Graphs in Montages - Anlauff, Kutter, Pierantonio (1998)   (Correct)

.... we started with a carefully elaborated and complete specification of an object oriented language 1 that 1 Most people do not consider Oberon being object oriented due to is used at least in academy for the implementation of compilers, operating systems [33] various applications, and teaching [24]. Some peculiarities in the design of the language Oberon affected considerably the original Montages formulation. In particular, each semantic concept in the language is represented by a meaningful keyword in the concrete syntax. Therefore, we used the tokens representing these keywords in the ....

Niklaus Wirth Martin Reiser. Programming in Oberon - Steps Beyond Pascal and Modula. Addison-Wesley, 1992.


Component-Oriented Programming in Object-Oriented Languages - Fröhlich, Franz (1999)   (Correct)

....the concept of stand alone messages. We will again use a series of examples based on the abstract data type Stack,thistime expressed in the experimental programming language Lagoona [12] Lagoona is an imperative, modular, and object oriented 3 programming language loosely based on Oberon [25]. The basic compilation unit is the module as opposed to the class or interface in conventional object oriented languages. Modules contain declarations of constants, variables, messages, types, procedures, and methods. MODULE Framework1; MESSAGE ( Add object to stack as topmost object. ....

Martin Reiser and Niklaus Wirth. Programming in Oberon: Steps beyond Pascal and Modula. Addison-Wesley, 1992.


Component-Oriented Programming Languages: Messages vs. Methods.. - Fröhlich (2000)   (Correct)

....we prefer the term implementation polymorphism in this context. Independent extensibility requires some form of encapsulation that isolates components from their environment except for explicitly declared dependencies. Sealed encapsulation constructs [2] in modular languages such as Oberon [12] are one way to achieve this.Therefore, combining concepts from modular and object oriented languages should be a viable approach to the design of component oriented programming languages [16] However, simply embedding object oriented concepts into a modular language unchanged is insufficient. ....

.... qualified in external modules: edu.uci.framework.Stack stack = null; stack = new edu.uci.components.ArrayedStack(16) stack.edu.uci.framework.push(new Integer(1) To avoid excessive qualifications, we introduce an aliasing construct for import declarations as found in Oberon [12]: module com.factorial.cool.extension import f1 = edu.uci.framework; public class CoolStack implements f1.Stack . public void f1.push (Object o) public void f1.pop ( public Object f1.top ( public boolean f1.empty ( To adapt this class ....

[Article contains additional citation context not shown here]

Martin Reiser and Niklaus Wirth. Programming in Oberon: Steps Beyond Pascal and Modula. Addison-Wesley (ACM Press), Wokingham, England, 1992.


Towards Language Support for Component-Oriented Real-Time .. - Franz, Fröhlich, Kistler (1999)   (Correct)

....with the requirements of real time systems and shows how Lagoona s flexible message send semantics could be exploited to schedule non essential computations. 2 The Programming Language Lagoona Lagoona is an imperative, modular, and object oriented programming language loosely based on Oberon [13]. Note that we use the term object oriented somewhat reluctantly because the better term component oriented is not yet widely accepted. As will become clear below, Lagoona differs fundamentally from common object oriented languages, for example in the treatment of messages and the absence of ....

M. Reiser and N. Wirth. Programming in Oberon: Steps beyond Pascal and Modula. Addison-Wesley, 1992.


Typesafe Dynamic Classification - Schlegelmilch   (Correct)

....consequently one cannot annotate variables with them. However, even if we accept these sets of objects as classes, this solution makes constrained classes less useful because there is no way to access their local features. A dynamic type check facility can help here: Type guards like in Oberon [24] can help to simulate local variables of constrained classes, because they provide a dynamic type test. A type guard controls a block by narrowing the type of a variable in that block: if the object bound to the variable does not conform to the type, the block is skipped. So, if the block is ....

Niklaus Wirth and Martin Reiser. Programming in Oberon - Steps Beyond Pascal and Modula. Addison-Wesley, rst edition, 1992. source code from the book is available at: ftp://ftp.inf.ethz.ch/pub/software/Oberon/Books/PinOberon/.


Class and Type Hierarchies: Extension, Constraining, and Roles - Schlegelmilch   (Correct)

....consequently one cannot annotate variables with them. However, even if we accept these sets of objects as classes, this solution makes constrained classes less useful because there is no way to access their local features. A dynamic type check facility can help here: Type guards like in Oberon [WR92] can help to simulate local variables of constrained classes, because they provide a dynamic type test. A type guard controls a block by narrowing the type of a variable in that block: if the object bound to the variable does not conform to the type, the block is skipped. So, if the block is ....

Niklaus Wirth and Martin Reiser. Programming in Oberon - Steps Beyond Pascal and Modula. Addison-Wesley, rst edition, 1992. source code from the book is available at: ftp://ftp.inf.ethz.ch/pub/software/Oberon/Books/PinOberon/.


Micro-Kernel Support for a Lightweight Extensible Workstation.. - de Villiers (1999)   (Correct)

....0 . A variable of an extended type can always be assigned to a variable of the corresponding base type. A variable of a base type can only be assigned to a variable of an extended type if it can be shown that all fields in the extended type will be unambiguously specified after the assignment ([21], p. 193) This implies that the dynamic type of the variable of the base type must be an extension of the static type of the variable of the extended type. From the previous example, the assignment x : v is only legal if the dynamic type of v is an extension of P 0 . CHAPTER 2. BACKGROUND 19 ....

Martin Reiser and Niklaus Wirth. Programming in Oberon: Steps beyond Pascal and Modula. Addison-Wesley Publishing Company, 1992.


OMS - Object-Oriented Data Management System: Introductory.. - Norrie, Würgler (1997)   (Correct)

....particular implementation platform in that, unlike most object oriented data models, it is independent of a particular type model and hence of a particular programming language environment. The generic model has been instantiated in number of environments including ones based on C , Java, Oberon [RW92] and Prolog. 1.2 OM Framework for Database Development OM is a generic object data model with influences from extended entity relationship models and semantic data models, as well as from object oriented paradigms. There were two main driving forces in the development of the model. First, we ....

M. Reiser and N. Wirth. Programming in Oberon: Steps beyond Pascal and Modula. Addison Wesley, 1992.


Generating an Action Notation Environment from.. - Anlauff, Kutter..   (Correct)

....tree. The formulation of Montages [KP97a] was strongly influenced by some case studies where the Oberon language [KH95,KP97b] has been specified. Oberon is an object oriented language that is used for the implementation of compilers, operating systems [WG92] various applications, and teaching [RW92]. Montages have been used also in other case studies, such as the specification of the 1 Historically the C case study was preceded and paralleled by work on Pascal [Gur88] Modula2, Prolog, and Occam, see [BH98] for a commented bibliography on ASM case studies. Java [Wal97] language, the ....

M. Reiser and N. Wirth. Programming in Oberon - Steps Beyond Pascal and Modula. Addison-Wesley, 1992.


Adding Concurrency to the Oberon System - Lalis, Sanders (1994)   (3 citations)  (Correct)

....of practical importance. In this report we describe a project, Concurrent Oberon, which introduces concurrency into the Oberon system while maintaining the simplicity and spirit of the original system. 1 Introduction Oberon is the name of both a programming language designed by Niklaus Wirth [RW92], and an operating system [WG92] for the Ceres workstation [Ebe87] designed by Wirth and J urg Gutknecht. 2 Both the language, which supports object oriented programming, and the system are notable for the elegance of their designs and significant functionality with a very small use of ....

....oberon: Thread; The variable oberon indicates the Oberon thread, and variable cur indicates the thread that is currently executing, and is updated by the scheduler each time control is transferred. Parameters can be passed to a thread by using the type extension facility of the Oberon language [RW92]. New descriptor types can be defined by augmenting the base thread descriptor with new fields, and instances thereof may be used to invoke the Create operation. Thread procedures can access the additional fields of the descriptor of the currently executing thread using type guards on the variable ....

Martin Reiser and Niklaus Wirth. Programming in Oberon: Steps Beyond Pascal and Modula. ACM Press, Addison-Wesley, 1992.


A Formal Semantics for a Language with Type Extension - Bancroft, Hayes (1995)   (Correct)

....static and dynamic semantics are given in a denotational style. 1 Introduction In languages such as Pascal and Modula 2, program variables are declared to be of a certain type and may then be assigned only values that belong strictly to that type. In the latest of this family of languages, Oberon [RW92, Wir88b] and Oberon 2 [MW91] this restriction has been relaxed for record and pointer types to achieve inheritance. The same approach to the development of an objectoriented Ada9X is suggested in [Sei91] Type extension [Wir88a] is the creation of new record types from existing record types by the ....

M. Reiser and N. Wirth. Programming in Oberon: Steps beyond Pascal and Modula. Addison-Wesley, 1992.


The Specification of Dynamic Distributed Component Systems - Kiniry (1998)   (2 citations)  (Correct)

....and challenging, I will not pursue the creation or use of such a language. I consider the following interesting research languages: Beta [106, 113] CLOS [14, 60, 101, 102, 131] and [155, Chapter 28] Dylan [9] ML [38, 124, 134] the Pascal Modula family [127, 128, 175, 176, 173] Oberon [141, 177], Obliq [23, 24] Self [2, 167, 168] Simula [12, 45] and Squeak [91] The following are the out of mainstream production languages I believe are worthwhile: Eiffel [121, 122] Objective C [43, 44] the best short introduction can be found in [108] the best book on the language is [136] ....

M. Reiser and Niklaus Wirth. Programming in Oberon: Steps Beyond Pascal and Modula. Addison-Wesley Publishing Company, 1992.


Just-In-Time Stub Generation - Hof (1997)   (4 citations)  (Correct)

....been proposed. A common approach is to put part of the additional complexity into the object system, i.e. to hide it from the developer, by extending the notion of objects and classes. The purpose of the work described in this paper is to add support for distributed objects to the Oberon system [Rei92]. In particular, distributed objects should support the implementation of distributed models (in the sense of the MVC paradigm [KrP88] i.e. they should support the adaptation of existing Oberon applications (ease the transition of existing MVC applications) to a distributed environment. To ease ....

Reiser M., Wirth N.: Programming in Oberon - Steps beyond Pascal and Modula-2. Addison-Wesley 1992


Fast, accurate call graph profiling - Spivey Oxford University   (Correct)

No context found.

M. Reiser and N. Wirth, Programming in Oberon: steps beyond Pascal and Modula, ACM Press, New York, 1992. 17


Skeletons and the Anatomy of Monads - Chuan-Kai Lin Department   (Correct)

No context found.

Martin Reiser and Niklaus Wirth. Programming in Oberon: Steps Beyond Pascal and Modula. Addison Wesley, Reading, MA, USA, June 1992.


Dynamic Object Replacement and Implementation-Only Classes - Pascal Costanza University (2001)   (3 citations)  (Correct)

No context found.

M. Reiser and N. Wirth. Programming in Oberon -- Steps Beyond Pascal and Modula. Addison-Wesley, 1992.


Module Embedding - Atanas Radenski Computer   (Correct)

No context found.

Reiser and N. Wirth. Programming in Oberon: Steps beyond Pascal and Modula. ACM Press, 1992.

First 50 documents

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC