next up previous contents
Next: Overview Up: No Title Previous: Contents

Introduction

  SATHER-K is an object-oriented programming language based on the design of the language SATHER [OMOHUNDRO 1991, OMOHUNDROSTOUTAMIRE 1994] by Stephen Omohundro in 1990/94 at the International Computer Science Institute at the University of California at Berkeley. This design in turn was based on the original design of the programming language EIFFEL [MEYER 1988] for achieving higher efficiency of the generated code.

SATHER-K has been designed for teaching classical as well as object-oriented programming and design techniques, and as a basis for reusable class libraries and object-oriented frameworks. This report gives a precise language description for implementors. It is not intended as a programmer's manual.

We give a traditional language description in the interpretive style. The syntax is described in extended BACKUS NAUR form as described in the appendix of [WAITEGOOS 1984]. Rules marked with an asterisk are given for introducing terminology only; they are not used in derivations from the syntactic target program.

A program specifies a computation by describing a sequence of actions. A computation may be realized by any sequence of actions having the same effect as the one described here for the given computation. The meaning of constructs that do not satisfy the conditions given in this report is undefined. The meaning of constructs is also undefined if this report does not explicitly specify a meaning. Whether, and in what manner, a particular implementation assigns meaning to undefined constructs is outside the scope of this description.

Notes, hints, examples and problems are not part of the language description but describe motivations for certain decisions, implementation hints, examples and open questions which still need to be resolved.

Acknowledgements: This report owes a lot to contributions by Stephen Omohundro, and Markus Armbruster, Nigel Horspool, Peter Lockemann, Welf Löwe, Rainer Mauch, Martin Odersky, Erhard Plödereder, Arnd Pötsch-Heffter, Christian von Roques, Martin Trapp, Franz Weber, and Wolf Zimmermann.


next up previous contents
Next: Overview Up: No Title Previous: Contents

Martin Trapp
Mon Feb 17 16:49:16 MET 1997