Diploma Thesis DIP-1484

BibliographySiebert, Fridtjof: Implementierung eines Eiffel-Compilers für SUN/SPARC.
University of Stuttgart, Faculty of Computer Science, Diploma Thesis No. 1484 (1997).
107 pages, german.
CR-SchemaD.3.4 (Programming Languages Processors)
D.3.3 (Language Constructs and Features)
D.4.2 (Storage Management)
D.1.5 (Object-oriented Programming)
KeywordsEiffel; compiler; SUN; SPARC; garbage-collection; multiple inheritance; dynamic binding; genericity; Üebersetzer; Mehrfachvererbung; dynamisches Binden; Generizität
Abstract

Ziel der Arbeit war es, einen Compiler für die Programmiersprache Eiffel zu entwickeln. Als Zielcode wird direkt SPARC-Maschinencode erzeugt, so dass eine bei bisherigen Eiffel-Implementierungen nötige C-Compilation wegfällt. So wird auch die Erzeugung effizienten Maschinencodes für Besonderheiten der Sprache Eiffel moeglich, wie dynamisch gebundene Aufrufe und die effiziente Implementierung eines Garbage-Collectors.

Der Compiler selbst sollte bei konsequenter Verwendung von objektorientierten Techniken entwickelt werden. Die Beschreibung des objektorientierten Aufbaus des Compilers nimmt daher auch einen großen Teil der Ausarbeitung ein.

Eiffel besitzt eine Reihe an leistungsstarken Konstrukten, wie die flexible Mehrfachvererbung und Generizität, deren effiziente Implementierung eine gute Wahl der im Zielcode benutzten Strukturen verlangt. Diesen Strukturen wurde daher ein wichtiger Teil dieser Arbeit gewidmet.

Schließlich ist die Speicherverwaltung durch einen Garbage-Collector in Eiffel unerlässlich. Auch wenn er im Rahmen dieser Arbeit nicht implementiert werden konnte, so befasst sich doch ein eigenes Kapitel ausführlich mit der detaillierten Beschreibung einer effizienten Implementierung der Speicherverwaltung.

Full text and
other links
PostScript (1685480 Bytes)
Access to students' publications restricted to the faculty due to current privacy regulations
Department(s)University of Stuttgart, Institute of Computer Science, Programming Languages and Compilers
Entry dateJuly 4, 1997
   Publ. Computer Science