4
M. Franz: Java – Anmerkungen eines Wirth-Schülers 23 Informatik Spektrum 21: 23–26 (1998) © Springer-Verlag 1998 Zusammenfassung Die „Internet-Programmierspra- che“ Java ist momentan in aller Munde.Leider wird bei der recht marktschreierisch geführten Diskussion um Java häufig unter- schlagen,dass viele der Java immanenten Qualitäten keineswegs neu sind, sondern sich (besonders im Umfeld der Sprache Pas- cal) seit langem bewähren. Der vorliegende Artikel beleuchtet den rasanten Aufstieg von Java,zeigt bislang weitgehend unbe- kannte Zusammenhänge zwischen Java und Pascal auf, und wagt schliesslich eine Prognose über die Zukunft von Java. Schlüsselwörter Programmiersprachen, Java, Pas- cal,World Wide Web Summary The current discussion of Java is charak- terized by much hyperbole and often fails to mention that many of Java’s distinguishing features have previously appeared in the context of other languages, notably Pascal. This article illumina- tes the remarkably rise of Java, exposes a number of little-kno- wn parallels between Java and pascal, and finally speculates on the future of Java. Key words Programming languages, Jva, Pascal, World Wide Web Computing Reviews Classification D.3, H.5.1 a0000005222 1. Einleitung Wie Niklaus Wirth einmal trefflich bemerkte [20],ist die Welt der Informatik von Modeerscheinungen geprägt. Ohne groß zu übertreiben darf man wohl auch beim Phänomen Java von ei- ner Mode sprechen, die sich über kurz oder lang auf ein etwas realistischeres Niveau zurückentwickeln wird. Ziel des vorlie- genden Artikels soll sein,das Phänomen Java im Kontext zeit- genössischer und besonders auch europäischer Informatik- Forschung etwas näher zu analysieren, dabei insbesondere auch den Mythos auszuräumen,Java sei sozusagen spontan „aus dem Nichts“ entstanden,und letzthin die tatsächlichen Verdienste von Java auch zu würdigen. Das „Konzept Java“, bestehend aus einer objektorien- tierten Programmiersprache und der Architektur einer auf die- se Programmiersprache zugeschnittenen virtuellen Maschine wurde im August 1995 in einer beispiellosen Marketing-Aktion der Öffentlichkeit vorgestellt.Aufgrund einer Vielzahl begünsti- gender Faktoren, auf die gleich noch etwas näher eingegangen wird, erlangte Java rasch einen enormen Bekanntheitsgrad. So ist es auch für den Autor manchmal nur schwer nachvollziehbar, daß Java gerade erst zwei Jahre alt ist, so vollumfänglich ist Java die Durchdringung unserer Informatikwelt gelungen. a0000005222 2. Die rasche Verbreitung von Java Das Java-Konzept, d. h. Sprache und virtuelle Maschine, hat seinen Ursprung im 1990 begonnenen Green(Oak)-Projekt bei der Firma Sun. Das ursprüngliche Ziel dieses Projektes be- stand darin, eine Softwareentwicklungsumgebung für Konsu- mentenelektronik zu schaffen: Moderne elektrische Apparate wie Toaster,Waschmaschinen und Mobiltelefone enthalten im- mer aufwendigere Software, die von „eingebetteten“ Compu- tern, sogenannten Microcontrollern ausgeführt wird. Es war das Ziel von Sun, statt der Vielzahl im Einsatz befindlicher Microcontroller-Architekturen eine einzige, skalierbare Archi- tektur zu schaffen (die heutige Java Virtual Machine), die ei- nem breiten Spektrum von Anwendungen gerecht wird.Als Chip-Hersteller trug sich Sun natürlich in der Absicht, die ent- sprechenden Microcontrollers dann auch zu produzieren und zu verkaufen. Gemäß Suns eigenen Angaben [10] kam die Neuori- entierung von Java in Richtung auf das World Wide Web erst im Jahre 1994 und ging von Bill Joy,einem der Mitbegründer von Sun aus. Im Herbst 1994 begann die Implementierung des Hot- Java Web-Browses mit „Applet“-Funktionalität.Dieser wurde im März 1995 einer ausgewählten Runde von strategischen Part- nern präsentiert, darunter auch der Firmenleitung der Netscape Communications Corporation, deren spätere öffentliche Unter- stützung von Java wesentlich zu dessen Erfolg beitrug. Im Au- gust 1995 erfolgte dann die eigentliche Lancierung von Java, in der für eine Basistechnologie reichlich unüblichen Form einer Folge von Pressekonferenzen. Die erstaunlich rasche Verbreitung der Java-Idee ist auf die fast ideale Konjunktion mehrerer Ko-Faktoren zurück- zuführen. Hauptbeitrag Java – Anmerkungen eines Wirth-Schülers Michael Franz Michael Franz Department of Information and Computer Science, University of California, Irvine, CA 92697-3425, USA

Java – Anmerkungen eines Wirth-Schülers

Embed Size (px)

Citation preview

M. Franz: Java – Anmerkungen eines Wirth-Schülers 23

Informatik Spektrum 21: 23–26 (1998) © Springer-Verlag 1998

Zusammenfassung Die „Internet-Programmierspra-che“ Java ist momentan in aller Munde. Leider wird bei der rechtmarktschreierisch geführten Diskussion um Java häufig unter-schlagen, dass viele der Java immanenten Qualitäten keineswegsneu sind, sondern sich (besonders im Umfeld der Sprache Pas-cal) seit langem bewähren. Der vorliegende Artikel beleuchtetden rasanten Aufstieg von Java, zeigt bislang weitgehend unbe-kannte Zusammenhänge zwischen Java und Pascal auf, und wagtschliesslich eine Prognose über die Zukunft von Java.

Schlüsselwörter Programmiersprachen, Java, Pas-cal,World Wide Web

Summary The current discussion of Java is charak-terized by much hyperbole and often fails to mention that manyof Java’s distinguishing features have previously appeared in thecontext of other languages, notably Pascal. This article illumina-tes the remarkably rise of Java, exposes a number of little-kno-wn parallels between Java and pascal, and finally speculates onthe future of Java.

Key words Programming languages, Jva, Pascal,World Wide Web

Computing Reviews Classification D.3, H.5.1

a00000052221. Einleitung

Wie Niklaus Wirth einmal trefflich bemerkte [20], ist die Weltder Informatik von Modeerscheinungen geprägt. Ohne groß zuübertreiben darf man wohl auch beim Phänomen Java von ei-ner Mode sprechen, die sich über kurz oder lang auf ein etwasrealistischeres Niveau zurückentwickeln wird. Ziel des vorlie-genden Artikels soll sein, das Phänomen Java im Kontext zeit-genössischer und besonders auch europäischer Informatik-Forschung etwas näher zu analysieren, dabei insbesondere auchden Mythos auszuräumen, Java sei sozusagen spontan „aus demNichts“ entstanden, und letzthin die tatsächlichen Verdienstevon Java auch zu würdigen.

Das „Konzept Java“, bestehend aus einer objektorien-tierten Programmiersprache und der Architektur einer auf die-se Programmiersprache zugeschnittenen virtuellen Maschinewurde im August 1995 in einer beispiellosen Marketing-Aktionder Öffentlichkeit vorgestellt.Aufgrund einer Vielzahl begünsti-gender Faktoren, auf die gleich noch etwas näher eingegangenwird, erlangte Java rasch einen enormen Bekanntheitsgrad. Soist es auch für den Autor manchmal nur schwer nachvollziehbar,daß Java gerade erst zwei Jahre alt ist, so vollumfänglich ist Javadie Durchdringung unserer Informatikwelt gelungen.

a00000052222. Die rasche Verbreitung von Java

Das Java-Konzept, d. h. Sprache und virtuelle Maschine, hatseinen Ursprung im 1990 begonnenen Green(Oak)-Projekt beider Firma Sun. Das ursprüngliche Ziel dieses Projektes be-stand darin, eine Softwareentwicklungsumgebung für Konsu-mentenelektronik zu schaffen: Moderne elektrische Apparatewie Toaster,Waschmaschinen und Mobiltelefone enthalten im-mer aufwendigere Software, die von „eingebetteten“ Compu-tern, sogenannten Microcontrollern ausgeführt wird. Es wardas Ziel von Sun, statt der Vielzahl im Einsatz befindlicherMicrocontroller-Architekturen eine einzige, skalierbare Archi-tektur zu schaffen (die heutige Java Virtual Machine), die ei-nem breiten Spektrum von Anwendungen gerecht wird.AlsChip-Hersteller trug sich Sun natürlich in der Absicht, die ent-sprechenden Microcontrollers dann auch zu produzieren undzu verkaufen.

Gemäß Suns eigenen Angaben [10] kam die Neuori-entierung von Java in Richtung auf das World Wide Web erst imJahre 1994 und ging von Bill Joy, einem der Mitbegründer vonSun aus. Im Herbst 1994 begann die Implementierung des Hot-Java Web-Browses mit „Applet“-Funktionalität. Dieser wurdeim März 1995 einer ausgewählten Runde von strategischen Part-nern präsentiert, darunter auch der Firmenleitung der NetscapeCommunications Corporation, deren spätere öffentliche Unter-stützung von Java wesentlich zu dessen Erfolg beitrug. Im Au-gust 1995 erfolgte dann die eigentliche Lancierung von Java, inder für eine Basistechnologie reichlich unüblichen Form einerFolge von Pressekonferenzen.

Die erstaunlich rasche Verbreitung der Java-Idee istauf die fast ideale Konjunktion mehrerer Ko-Faktoren zurück-zuführen.

Hauptbeitrag

Java – Anmerkungen eines Wirth-Schülers

Michael Franz

Michael FranzDepartment of Information and Computer Science,University of California, Irvine, CA 92697-3425, USA

24 M. Franz: Java – Anmerkungen eines Wirth-Schülers

• Das explosive Wachstum des Internets verstärkt die Disper-sion damit zusammenhängender Ideen. Man denke an eineGruppe von Ameisen, die die Ideen darstellen, welche sichauf der Oberfläche eines Luftballons auseinderbewegen.Wird der Ballon gleichzeitig noch aufgeblasen, so kommendie Ameisen wesentlich schneller voran, als ihnen dies auseigener Kraft möglich wäre.

• Die Dominanz des Softwaremarktes durch die Firma Micro-soft begünstigt Allianzen von Konkurrenten. Die Java-Tech-nologie erfuhr auch deshalb an breiter Front Unterstützungdurch die Industrie, weil sie, teilweise durchaus zu Recht, alsChance verstanden wurde, den Einfluß von Microsoft min-dern zu können.

• Im Zyklus der ewigen Suche der Informatikanwender nachdem Allheilmittel all ihrer Softwareprobleme einerseits, undder Anbieter nach einem neuen Schlagwort, unter dem sichProdukte verkaufen lassen andererseits, war die Zeit reif füreine Neuerung. Man vergleiche mit früheren solchen Mode-wellen, mit Schlagwörtern wie „strukturiert“,„objektorien-tiert“ und „client-server“, bei denen ebenfalls große Hoff-nungen erweckt und selten erfüllt wurden.

• Im Klima einer allgemeinen Unzufriedenheit mit C [11] undC++ [15] als pädagogischem Vehikel wurde Java an den ame-rikanischen Universitäten enthusiastisch aufgegriffen. Dieshängt stark damit zusammen, daß in den USA ein immerstärkerer Druck auf den Universitäten lastet, kurzfristigmarktorientierte Ausbildung anstelle von langlebiger Bildungzu betreiben. In diesem Klima können es sich bestenfalls nochElitehochschulen wie das MIT erlauben, moderne aber haltnicht-“industriekompatible“ Programmiersprachen wieScheme [1] im Unterricht zu verwenden. Die Ankunft von Javaermöglicht es den Hochschulen, endlich der verfahrenenC/C++-Situation zu entfliehen, ohne dabei als „industrie-feindlich“ zu gelten.An der Heimathochschule des Schreiben-den z. B., der Universität von Kalifornien in Irvine, wurdenbereits zum Herbst 1996 mehrere Vorlesungen auf Java umge-stellt, darunter sogar Anfängervorlesungen. Überraschender-weise geschah dies fast diskussionslos, obgleich das Professo-renkollegium vorher über lange Zeit hinweg in der Sprachdis-kussion „Pascal gegenüber C“ stark polarisiert gewesen war.

Java hätte natürlich diesen immensen Erfolg trotzdem nicht ge-habt, wenn es eine schlechte Programmiersprache wäre. Nun,eine schlechte Programmiersprache ist Java nicht, und es isttatsächlich sogar um einiges besser als die zuvor dominieren-den Sprachen C und C++. Es ist einfach festzuhalten, daß Javanur eine unter vielen modernen,„guten“ Programmiersprachenist, und seine herausragende Rolle unter diesen hauptsächlichgeschicktem Marketing verdankt.

Die Firma Sun hat offensichtlich die Lektion frühererMarkteinführungen von Basistechnologie verstanden (z. B.VHSvs. Betamax, DOS vs. Macintosh) und erkannt, daß in den meistenFällen dasjenige Produkt den Erfolg davonträgt, welches frühzei-tig marktbeherrschend wird. Somit war es z. B. eine kluge Ge-schäftsentscheidung der Firma Sun, mit der Lancierung von Javanicht abzuwarten, bis jedes kleine Detail der Sprach- und Biblio-theksdefinition endgültig geklärt war.Als Konsequenz darausmußte nur wenig später mit Java 1.1 eine „Nachbesserung“ erfol-gen, aber zu diesem Zeitpunkt hatte Java bereits eine kritischeMasse erreicht und sich neben zahlreichen Mitbewerbern als die

dominierende Technologie für executable content im Internet po-sitioniert.Aufgrund von Javas frühzeitigen und aggressiven Mar-ketings sind konkurrierende Technologien wie z. B. das von denBell Laboratories stammende Inferno [13] nur einer kleinenSchar von Fachleuten überhaupt ein Begriff geworden.

a00000052223. Was an Java ist wirklich neu?

Bei näherer Betrachtung stellt man schnell fest, daß sich die re-volutionären Neuheiten bei Java in engen Grenzen halten.Viel-mehr vereinigt Java eine Vielzahl von altbekannten Ideen, dievermutlich unabhängig voneinander schon mehrfach an ver-schiedenen Orten auf der Welt entdeckt worden sind. Ein über-raschend großer Anteil der Kernaspekte von Java wurde aberspeziell auch durch frühere Arbeiten des international bekann-ten Forschers Niklaus Wirth und seiner Forschungsgruppe ander ETH Zürich vorweggenommen:• Die Portabilität von Java beruht auf der Bereitstellung einer

virtuellen Maschine [12], welche sich leicht auf einer Viel-zahl von Architekturen simulieren läßt. Bereits vor mehr als20 Jahren wurde die Idee der virtuellen Maschine schon ein-mal weltweit popularisiert, bevor sie wieder in Vergessenheitgeriet. Damals handelte es sich um die Pascal-P Implementa-tion der ETH Zürich [14], die einen entscheidenden Anteilan der Verbreitung von Pascal innehatte. Interessanterweisesind sich die virtuellen Maschinen für Pascal und Java er-staunlich ähnlich: bei beiden handelt es sich um Null-Adress-Architekturen (mit einem Stack), welche byte-codierte Instruktionen ausführen.

• Auch die Idee der absoluten Typsicherheit, welche durch einLaufzeit-Typsystem und Garbage Collection unterstützt wird,ist nicht neu, und auch auf diesem Gebiet hat die ETH Züricheine Vorreiterrolle gespielt.Viele der Argumente, mit denendas Java-Team die Abschaffung von Pointers begründet, wur-den in der „modular language community“ bereits fünf Jahrezuvor anläßlich der Einführung von Niklaus Wirths Program-miersprache Oberon [19] vorweggenommen. Schon seit jeherforcieren darüberhinaus die Wirth’schen Sprachen [17, 18, 19]Sicherheitsaspekte wie den Indextest beim Arrayzugriff - nurwurde dies bislang von der Programmierergemeinde eher alslästige Einschränkung denn als Vorteil begriffen. Offenbarvermochte die Werbekampagne der Firma Sun, hier ein ge-wisses Umdenken zu bewirken.

• Die Überlegung, daß eine absolut typsichere Sprache dieKonstruktion von über Architekturgrenzen hinweg portablerSoftware überhaupt erst ermöglicht, führte an der ETH Zü-rich in den Jahren 1990-93 zur Konstruktion einer ganzen Fa-milie [2] von Implementationen des Oberon-Systems [21, 22].Diese zeichnete sich nicht nur durch ein einheitliches Appli-kationsprogramm-Interface quer über alle Host-Umgebun-gen hinweg aus [3], sondern auch durch eine einheitliche,maschinenunabhängige Dokumentenarchitektur [16], wel-che frühzeitig bereits die Einbettung im Text mitschwim-mender aktiver Objekte vorwegnahm. Die jüngste Weiterent-wicklung, Oberon System 3 [8] geht tatsächlich bereits wiedereinen Schritt weiter als die heutigen Java-basierten Browser,indem es die konzeptuell unbefriedigende Trennung zwi-

M. Franz: Java – Anmerkungen eines Wirth-Schülers 25

schen Text und Objekten durch ein vereinheitlichtes, inte-grierendes Objektmodell ersetzt.

• Java-Programme können aus mehreren Compilationsein-heiten bestehen, welche erst zur Ladezeit „dynamisch“ ge-linkt werden [5]. Java unterstützt „echte“ separate Compila-tion, bei denen der Compiler Schnittstellenüberprüfungüber Modulgrenzen hinweg vornimmt. Für die vormaligenC/C++ Benutzer mag dies eine wesentliche Verbesserungdarstellen, denn C/C++ verfügt über einen nur sehr primiti-ven Mechanismus zur getrennten Übersetzung, welcher aufder textuellen Inklusion von sogenannten „Header-Files“beruht. In der Welt der modularen Sprachen jedoch ist einezu Java äquivalente Funktionalität seit mehr als einem Jahr-zehnt der Standard, und wiederum hat Wirth mit Modula-2[18] hier einen Meilenstein gesetzt.

• Selbst die heute als Hauptinnovation von Java geprieseneIdee der plattform-unabhängigen mobilen Programme imZusammenhang mit Codegeneration zur Laufzeit wurdebereits an der ETH Zürich vorweggenommen. Die unter derLeitung von Niklaus Wirth entstandene Dissertation [4] desSchreibenden beschreibt ein dynamisch erweiterbares Sy-stem, in dem der ausführbare Objektcode „on-the-fly“ auseinem maschinenunabhängigen Zwischenformat erzeugtwird. In dieser im Februar 1994, d. h. mehr als ein Jahr vorder allerersten Präsentation von Java, auf Englisch publizier-ten Dissertation taucht bereits das Wort „Applet“ auf undwird eine Anzahl von Szenarien geschildert, die dem heuti-gen Einsatz von Java sehr ähnlich sind. Der Autor arbeitetheute an einer Weiterentwicklung dieses Systems, welchesgegenüber Java diverse Vorteile aufweist [6, 7].

In diesem Zusammenhang mag auch von Interesse sein, daß derAutor im März 1994 eine Reihe von Vorträgen in Kalifornienzum Inhalt seiner Dissertation gehalten hat, darunter auch ei-nen bei der Firma Sun Laboratories, Inc. Darüber hinaus warder besagte Bill Joy, welcher die Neuausrichtung von Java inner-halb von Sun bewirkt hat, einer der frühen Lizensenten desOberon-Systems der ETH und stand um die Jahreswende1994/95 im wiederholten Kontakt mit der ETH, während wel-chem er sich auch als Leser der Franz’schen Dissertation zu er-kennen gab.

a00000052224. Was wird aus Java werden?

Wie eingangs erwähnt, wird das Interesse an Java fast zwangs-läufig wieder etwas abflauen.Auch wenn hier und dort das Be-streben geäußert wird, bestehende Informatik-„Altlasten“ nachJava zu portieren, so wird dies selbst dann, wenn die Ausgangs-sprache C oder C++ ist, aufgrund der fehlenden Pointervaria-blen in Java ein nicht ganz triviales Unterfangen. Die Gefahr isthier eher, daß zur Unterstützung genau solcher Projekte irgend-jemand auf die Idee kommt, eine Spezialversion von Java „mitPointers“ herzustellen, welche natürlich dann alle Vorteile vonJava mit einem Schlag zunichte macht.

Darüber hinaus droht die Fragmentierung der Java-Welt in eine Reihe inkompatibler Dialekte, wie dies leider schonallzu oft in der Vergangenheit mit sogenannten „Industriestan-

dards“ geschehen ist. Die Firma Microsoft, gegen die, man erin-nere sich, die Java-Allianz zumindest teilweise überhaupt erstgeschmiedet wurde, ist nämlich drum und dran, dem Konkur-renten Sun als Eigentümer der Java-Technologie buchstäblichden Teppich unter den Füßen wegzuziehen. Nicht nur arbeitetMicrosoft an einer eigenen Java-Programmierumgebung, wel-che perfiderweise den Namen J++ trägt, und damit möglicher-weise langfristig nicht vollständig Java-kompatibel bleiben wird,sondern offensichtlich ist Microsoft auch daran, eigenständigeErweiterungen an Javas virtueller Maschine anzubringen.

Am gesichertsten ist das Überleben von Java als Un-terrichtssprache an den Hochschulen, und dies ist sehr zu be-grüßen. Ebenso wie die Hochschule des hier Schreibenden ha-ben im letzten Jahr eine große Anzahl von höheren Lehranstal-ten die Gunst der Stunde zu nutzen gewußt, und die KrakeC/C++ im Lehrplan durch Java ersetzt. Dieser Schritt wird nichtso leicht rückgängig zu machen sein, selbst wenn die Industrieweiterhin mit C und C++ arbeiten sollte. Mit gutem Gewissenkönnen die Hochschulen nämlich nun darauf verweisen, diemodernere und zukunftsweisendere Sprache zu verwenden,und aufgrund der syntaktischen Ähnlichkeit wird sich die Indu-strie damit abfinden können.

Es mag fast ein wenig ironisch erscheinen, aber of-fensichtlich hat die Marketingmaschinerie der Firma Sun daserreicht, was wir Informatikpädagogen seit Jahrzehnten vergeb-lich versuchen: auch den allerletzten „Hacker“ auf die Tugendender Typsicherheit und der Datenabstraktion aufmerksam zumachen.

a00000052225. Fazit

Als Professor an einer amerikanischen Hochschule ist mir Javaschon allein deshalb willkommen, weil es die schmerzlose Ablö-sung der didaktisch unzulänglichen Programmiersprachen Cund C++ gestattet. Java stellt insofern einen akzeptablen Kom-promiß dar, als es sich um eine moderne Programmiersprachein naher Tradition zu Pascal, Modula-2 und Oberon handelt,dies aber duch Anlehnung an die Syntax von C bewußt zu ver-schleiern versucht.Als Pragmatiker begrüße ich somit Java übe-rall dort, wo es als Alternative zu C oder C++ auf den Plan tritt.Wer jedoch bereits mit ähnlich mächtigen, aber überdies sogarnoch ästhetisch anspruchsvollen Programmiersprachen wieOberon oder auch Ada95 [9] gesegnet ist, darf guten Gewissensvorerst daran festhalten, ohne befürchten zu müssen, program-miersprachlich ins Hintertreffen zu geraten.

Michael Franz studierte Informatik an derETH Zürich (Dipl.-Ing. 1989, Dr. sc. techn.1994. Nach zwei weiteren Jahren an der ETHZürich wechselte er im Januar 1996 an dieUniversity of California in Irvine.WeitereInformationen zu Franz und seinen For-schungsprojekten findet man unterhttp://www.ics.uci.edu/~franz

26 M. Franz: Java – Anmerkungen eines Wirth-Schülers

a0000005222Literatur

1. H.Abelson, G. J. Sussman, J. Sussman: Structure and Interpretati-on of Computer Programs; The MIT Press/McGraw-Hill; 1985.

2. M. Brandis, R. Crelier, M. Franz, J. Templ: „The Oberon SystemFamily“; Software-Practice and Experience, 25:12, 1331–1366; 1995.

3. M. Franz: „Emulating an Operating System on Top of Another“;Software-Practice and Experience, 23:6, 677–692; 1993.

4. M. Franz: Code-Generation On-the-Fly: A Key to Portable Soft-ware; Dissertation Nr. 10497, ETH Zurich, erschienen im Verlagder Fachvereine, Zürich, ISBN 3-7281-2115-0; Februar 1994.

5. M. Franz: „Dynamic Linking of Software Components“; IEEEComputer, 30:3, 74–81; 1997.

6. M. Franz: „Beyond Java: An Infrastructure for High-PerformanceMobile Code on the World Wide Web“; in S. Lobodzinski, I. Tomek(Eds.), Proceedings of WebNet 97,World Conference of the WWW,Internet, and Intranet,Association for the Advancement of Com-puting in Education; ISBN 1-880094-27-4, 33–38; 1997.

7. M. Franz, T. Kistler: „Slim Binaries“; Communications of the ACM,40:12, 87-94; 1997.

8. J. Gutknecht:„Oberon System 3: Vision of a Future Software Tech-nology“; Software-Concepts and Tools, 15:1, 26-33, 1994.

9. International Organisation for Standardisation and InternationalElectrotechnical Commission: Ada Reference Manual: Languageand Standard Libraries,Version 6.0, 21 December 1994; Internatio-nal Standard No. ISO/IEC 8652:1995 (R)

10. JavaSoft, Inc.: What Is Java?; http://www.javasoft.com/nav/whatis.11. B.W. Kernighan, D. M. Ritchie: The C Programming Language;

Prentice-Hall; 1978.

12. T. Lindholm, F.Yellin, B. Joy, K.Walrath: The Java Virtual MachineSpecification; Addison-Wesley; 1996.

13. Lucent Technologies Inc.: Inferno; http://plan9.bell-labs.com/inferno/.

14. K.V. Nori, U.Amman, K. Jensen, H. H. Nägeli, Ch. Jacobi: Pascal-PImplementation Notes; in D.W. Barron, editor; Pascal: The Langu-age and its Implementation; Wiley, Chichester; 1981.

15. B. Stroustrup: The C++ Programming Language; Addison-Wesley,Reading; 1987.

16. C.A. Szyperski: „Write-ing Applications: Designing an ExtensibleText Editor as an Application Framework“, Proceedings of theSeventh International Conference on Technology of Object-Oriented Languages and Systems (TOOLS ’92), Dortmund,247–261, 1992.

17. N.Wirth: „The Programming Language Pascal“; Acta Informatica,1:1, 35-63; 1971.

18. N.Wirth: Programming in Modula-2; Springer-Verlag, Heidel-berg; 1982.

19. N.Wirth: „The Programming Language Oberon“; Software-Prac-tice and Experience, 18:7, 671-690; 1988.

20. N.Wirth: „Modula-2 and Object-Oriented Programming“; Pro-ceedings of the First International Modula-2 Conference, Bled,Yugoslavia, 7-13; 1989.

21. N.Wirth, J. Gutknecht: „The Oberon System“; Software-Practiceand Experience, 19:9, 857–893; 1989.

22. N.Wirth, J. Gutknecht: Project Oberon: The Design of an Opera-ting System and Compiler; Addison-Wesley; 1992.

Eingegangen am 11.03.1997, in überarbeiteter Form am 27.11.1997