printlogo
http://www.ethz.ch/index_EN
Department of Computer Science
 
print
  
English Deutsch

Prof. Thomas Gross

This page is available in German only!

Prof
Prof. Thomas Gross

Vorlesung "Compilerbau II"

Laboratory for Software Technology LST

Was passiert hinter den Kulissen? Antworten auf diese Frage gibt Prof. Dr. Thomas Gross in seiner Vorlesung "Compilerbau II" und im Interview mit Beate Anna Bernhard.

06. Oktober 2003

Welches ist Ihr Hauptinteressensgebiet in der Forschung?

Mein Hauptinteresse gilt der Konstruktion von Software-Systemen und was mit deren Konstruktion einher geht. D. h. wir überlegen, wie sollen solche Systeme programmiert und strukturiert werden, welche Systemarchitekturen wollen wir entwickeln und welche Werkzeuge brauchen wir hierzu. Um Software-Systeme zu untersuchen, bietet sich als weiterer Bereich die Beziehungen zu denjenigen an, die die Systeme bauen, den Hardware-Entwicklern. Das ist sozusagen das Spektrum.

Halten Sie über eines der Themen, die Sie jetzt genannt haben, im nächsten Semester eine Vorlesung?

Ja, und zwar in verschiedenen Vorlesungen:
In der Vorlesung "Systemprogrammierung" lernen die Studenten, wie die Hardware-Software Schnittstelle funktioniert. D. h. wie man auf dieser Ebene programmiert, welches die Ressourcen, die Probleme und die Modelle sind. Genau das, die unterliegende Basis, muss man verstehen, wenn man Softwaresysteme konstruieren will.

In der Vorlesung "Systemsoftware", dem alten Kernfach, lernen die Studenten Softwarearchitekturen kennen, Strukturen, die ein Softwaresystem hat.

Und in "Compilerbau II", der Vorlesung die ich halte, kommen Aspekte der Schnittstellen zwischen der Anwendung und der Ausführungsumgebung der Hardware zur Sprache.

Welches ist die Zielgruppe diese Vorlesung?

Die Vorlesung "Compilerbau II" richtet sich an Studenten im Hauptstudium, überwiegend an diejenigen, die schon Erfahrung mit Compilerbau haben z. Beisp. die die Vorlesung "Compilerbau I", die ich im Sommersemester halte, besucht haben. Daher dürften die meisten Studenten im 7. Semester sein, aber auch Studenten im 5. Semester besuchen die Vorlesung; "Compilerbau I" ist nicht Voraussetzung.

Welchen Nutzen haben die Studenten für das weitere Studium und in der späteren Praxis, wenn sie diese Vorlesung besuchen?

Der grosse Vorteil der Vorlesung für die Studenten ist, dass sie hier im Studium ein komplettes System kennen lernen können. In "Compilerbau II" lernen die Studenten viele der Methoden, wie sie in den besten funktionierenden Compilern benutzt werden. Und warum ist das wichtig? Es ist leider immer noch so, dass viele Entwicklungen auf dem Gebiet der Programmiersprachen dadurch beschränkt sind, wie man die Programmiersprachen übersetzen kann. Programmiersprachen sind immer ein Kompromiss zwischen irgendwelchen Abstraktionen, die die Programmiersprache zur Verfügung stellen kann und gewissen Realitäten, die irgendein Übersetzer dann zur Verfügung stellt. Um nun genau zu verstehen, warum manche Einschränkungen vorgeschrieben werden, muss man letztlich irgendwo wissen, wie ein Compiler oder Übersetzer mit der Programmiersprache umgeht.

Die Studenten können in dieser Vorlesung lernen, was hinter den Kulissen passiert, welche Werkzeuge dort erstellt werden und welche Einschränkungen diese Werkzeuge haben. Wer versteht, dass die Einschränkungen nicht zufällig sind, weil es eben konkrete Probleme in real existierenden Systemen gibt, dem fällt die Entwicklung von Systemen viel leichter. Wir versuchen zu zeigen, wie das ganze System aussieht. Später im Berufsleben sieht man immer nur einen kleinen Teil. Hier im Studium haben die Studenten die Chance, einmal alles im Ganzen - von Anfang bis Ende zu sehen.

Gibt es praktische Übungen zur Vorlesung?

Ja, aber natürlich! Man lernt doch nur was, wenn man etwas praktisch macht.

Alle Vorlesungen, die Systemsoftware, die Systemprogrammierung und Compilerbau I + II haben immer eine wichtige Übungskomponente. Im Compilerbau z. B. bauen die Studenten einen kompletten Compiler von Anfang bis Ende selbst. Natürlich unter Einsatz von Werkzeugen und für eine eingeschränkte Programmiersprache. Aber diese vereinfachte Programmiersprache ist so, dass man klar erkennt, welcher Schritt zu einer industriell eingesetzten Programmiersprache zu gehen ist. In Compilerbau II wird der Compiler aus dem ersten Semester erweitert u.a. für objekt-orientierte Programme wie Overloading, Overwiding. Nähe ist also immer gegeben, ich kann mir eine Vorlesung ohne Übungen eigentlich nicht vorstellen.

Als Student hörte ich diesen schönen Satz aus einem Buch über Hochschuldidaktik:
"Nichts was eine Studentin, ein Student durch eigene Anstrengung erarbeiten kann, darf ihr oder ihm abgenommen werden." Und das heisst doch, das man Übungen braucht, um den Studierenden die Chance zu geben, etwas selber zu erarbeiten. Wir müssen ihnen die Gelegenheit geben, in einem wohl definierten Umfeld durch eigene Anstrengungen etwas zu lernen.

Warum soll man Informatik studieren? Welche Zukunftsperspektiven hat ein Informatik-Student heute?

Warum sollte man Informatik studieren – also ich halte Informatik für ein sehr interessantes Gebiet in dem man lernt, wie wir mit komplexen Systemen umgehen, also wie wir diese bauen, entwickeln und analysieren. Komplexe Systeme schliessen hier die Themen der Informationsverarbeitung, Computersysteme, Netzwerke ein – Bereiche, die in unserer heutigen Gesellschaft sehr wichtig sind. Ein Informatikstudent oder eine Informatikstudentin lernt, wie man komplexe Systeme mit Software erstellt.

Aber da es im Grunde genommen keine physische und physikalische Realität gibt, mit der wir uns zuerst auseinander setzen müssen, haben wir es in der Informatik um vieles schwieriger. Wir entwickeln die Modelle und Abstraktionen ja selber.

Wenn ich mich über mein System mit jemanden verständigen will, habe ich keinen Bezugspunkt zur realen Welt, wie z. B. ein Architekt. Ich strukturiere mein System vielleicht anders, als jemand anderes und es gibt nichts, wie man die beiden Systeme einfach miteinander vergleichen könnte. Informatiker lernen, mit diesen Schwierigkeiten zurecht zu kommen, lernen ein Vokabular, mit dem man sich verständigen kann, lernen Methoden, mit denen man die Komplexität beherrscht. Das ist einfach unerlässlich, wenn man heute irgendwelche Systeme bauen will und zwar im allgemeinsten Sinn. Also ich glaube, wer in der Zukunft interessante Sachen machen will, der hat mit einem Informatikstudium sehr gute Voraussetzungen.

Und die Zukunftsperspektiven! Die hängen natürlich davon ab, wie gut der Student ist.

Ist das Informatikstudium spannend, ist Informatik kreativ?

Nun, jeder hat seine eigenen Möglichkeiten und kann es so spannend und kreativ gestalten, wie er es zulässt. Aber es ist schon so, dass in anderen Disziplinen wie Physik oder Chemie die Realitäten vorgegeben sind. Nicht so in der Informatik – hier haben wir die aussergewöhnliche Chance, an unserer Welt mitzubauen! Und es ist ja auch so, dass heute sehr viele Arbeitsplätze informatikbezogen sind. Informatik ist also auf jeden Fall spannend, sonst wäre die Arbeitswelt nicht so, wie sie ist.

Was denken Sie, warum studieren so wenig Frauen Informatik?

Ich denke, dass das nicht ein Problem der Informatik ist, sondern der ETH im allgemeinen. Wenn Sie sich Universitäten in den USA anschauen, sind die Verhältnisse zu Gunsten der Frauen eindeutig besser. Die ETH hat immer noch das Image, eine Hochschule für Männer zu sein, und das Männerumfeld wirkt wahrscheinlich auf viele Frauen abschreckend. Mir scheint, dass die Frauen den Zugang zur ETH nicht finden und sich auch der Vorteile, die eine technische Disziplin mit sich bringt, nicht bewusst sind. So ist beispielsweise ein sehr hohes Mass an Flexibilität möglich, die es erlaubt, Privates und Berufliches in idealer Form zu kombinieren.

Gab es in letzter Zeit etwas, das sie besonders gefreut resp. geärgert hat?

Sehr erfreulich und motivierend war der hohe Anteil an Gaststudenten in der Vorlesung Compilerbau I. Er zeigt mir, dass wir hier in der Lage sind, Themen anzubieten, die gefragt sind und Studenten von ausserhalb anziehen.

Ich weiss nicht, ob wir den Studenten mit dem Bachelor einen Gefallen tun. Und ich bin noch immer der Meinung, dass wir zuviele Veranstaltungen im Studienprogramm haben.

Haben Sie einen besonderen Rat an unsere Studenten?

Ja, zwei Dinge möchte ich ihnen ans Herz legen: Zum einen, dass es wirklich sehr wichtig ist, dass man die Übungen immer macht. Das heisst, dass man sie auch wirklich selbst machen und nicht einfach an einen Freund delegieren soll. Wenn man wirklich aus eigener Initiative mitmacht und immer am Ball bleibt, dann kann man relativ problemlos durch das Studium kommen. Und zweitens möchte ich die Studenten auffordern, wirklich immer zu fragen, wenn sie etwas nicht verstanden haben, und sich zu äussern, wenn etwas nicht stimmt. Sie sollten auch keine Angst haben, sich direkt an den Professor zu wenden. Es gibt keinen Grund, zurückhaltend zu sein, denn die meisten Professoren sind nett und beissen nicht!

Herr Gross, vielen Dank für dieses Gespräch.

 

Wichtiger Hinweis:
Diese Website wird in älteren Versionen von Netscape ohne graphische Elemente dargestellt. Die Funktionalität der Website ist aber trotzdem gewährleistet. Wenn Sie diese Website regelmässig benutzen, empfehlen wir Ihnen, auf Ihrem Computer einen aktuellen Browser zu installieren. Weitere Informationen finden Sie auf
folgender Seite.

Important Note:
The content in this site is accessible to any browser or Internet device, however, some graphics will display correctly only in the newer versions of Netscape. To get the most out of our site we suggest you upgrade to a newer browser.
More information

© 2012 ETH Zurich | Imprint | 30 May 2006
top