Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Hauptstudiumsprüfungen » Lehrstuhl 2 » Prüfungsprotokol Geschichte der Programmierung WS18/19

Prüfungsprotokol Geschichte der Programmierung WS18/19

Prüfer: Prof. Schneider, WS18/19

Atmosphäre:

Atmosphäre: Entspannt/Neutral - im Grunde wie in der Vorlesung. Note: Sehr gut

Prüfungsablauf:

Am Anfang gab es einen Zettel mit drei Spalten: Links die Programmiersprachen (Formac, Fortran, Snobol, Comit, Flowmatic, Algol60, Cobol), in der Mitte der Typ (kaufmännisch, numerisch, …) und rechts Namen (Backus, … und auch „Komitee“). Man sollte die Programmiersprachen zu den beiden anderen Spalten zuordnen. Ich habe auch noch ganz kurz was dazu gesagt, aber das war glaube ich nicht so wichtig. Es wurden danach auch ein paar grundlegende Fragen dazu gestellt - Basics eben.

Es gab noch ein kurzes Nachhaken zu Cobol, weil ich auf dem Zettel den Namen „Sammet“ gesucht hatte, wobei Cobol ja auch von einem Komitee entwickelt wurde.

Es kam auch noch die Bitte, ein bisschen was über Anekdoten zur Frau Sammet zu sagen –> Dass damals bei IBM die Frage kam „Do you have a lively imagination?“ und dass man als Aufgabe einfach nur die Aufforderung „Machen Sie mal“ (ohne wirklich viel konkreterem Auftrag) erhalten hat. Es wurde auch noch gefragt, wo Frau Sammet und vergleichbare Menschen dann gearbeitet haben. Das wusste ich nicht, aber er wollte darauf hinaus, dass man an bzw. nahe zu den Unis (MIT, Harvard) gegangen ist, um die guten Leute für sich gewinnen zu können.

Daraufhin gab es Fragen zu Formac. Wie es implementiert wurde (also als Preprocessor), wer es gebaut hat und wofür. Ich habe da auch schon grob angerissen, was die Besonderheiten im Code waren. Dann wurde ein Code-Beispiel (ich glaube aus der Vorlesung) gezeigt und man sollte erklären, was davon von Formac stammte und nicht von Fortran. Da habe ich insbesondere die Teile erklärt, die z.B. in einer Formel die Koeffizienten ausgeben.

Dann gab es Fragen zu den Kontrollstrukturen, wie sie in Fortran existierten.

Nun wollte er auch was zu den Strukturen in Formac wissen. Er wollte darauf hinaus, dass man irgendwie bei Gotos die Sprungziele im Laufe des Programms überschreiben konnte. Oder so. Bin mir da immernoch nicht sicher. :D

Dann gab es eine Frage zur Goto-Kontroverse. Dabei wollte er auch den Namen Zemanek (?) hören und ein paar Hintergründe dazu.

Dann gab es Fragen zur Nebenläufigkeit. Hier haben wir über PL/1 (Task-Anweisung), Algol68 (par begin und Kommas vs. Semikolons) und Ada gesprochen. Dann wurde der Botschaftenaustausch erwähnt als weitere Möglichkeit.

Nun: Wie kann man Synchronisation herstellen? (–> Semaphore von Dijkstra, Monitore von Hoare/Brinch Hansen/Dijkstra). Kurz über das Konzept unterhalten. Welche Sprache ist heute sehr bekannt dafür? –> Java mit Synchronized.

Jetzt wollte er wissen, was für die Betriebssystem-Programmierer leistungshungriger ist. Ich habe die Frage nicht ganz verstanden und zuerst über den Unterschied zwischen gemeinsamem Speicher und Botschaftenaustausch gesprochen. Er hat dann ein Beispiel genannt, an das ich mich nicht mehr ganz erinnere. Es lief darauf hinaus, dass bei einer der beiden Vorgehensweisen mehr Kontextwechsel (also „Prozess-Umschalten“) nötig ist, was natürlich teuer ist. Oder so - ich war bei der Frage ein bisschen überfordert.

Jetzt haben wir über die Syntaxanalyse gesprochen. Wie es anfing (Klammergebirge und so). Dann wollte er eigentlich eine Frage zum Stack stellen, hat den Begriff aber selbst genannt. Dann: Wann wurde der Stack und von wem erfunden?

Was gab es sonst noch? –> GAT und Runcible hat er mir als Begriffe genannt und ich sollte ein bisschen was dazu erzählen. Er hat dann noch erwähnt, dass GAT in der Impmenentierung wohl viel „kompakter“ war.

Nun: Wer hat bei der Vorrangsyntaxanalyse mitgewirkt (–> Floyd, Wirth, Weber). Und was gab es noch für ein Konzept (–> Kontext, dabei habe ich auch Paul und Floyd erwähnt).

Dann: Was war bei den LR-Grammatiken besonders, also welches Konzept hat er da erfunden –> Zusammenfassen in Zustände.

Allgemein gab es noch ein paar weitere Fragen, an die ich leider nicht mehr erinnere.

Fazit:

Bin zufrieden mit der Klausur und der Note. :-)