Archive for May, 2007

Folien zum Proseminar

Zum Anschauen habe ich meine Vortragsfolien – im PDF-Format – nachträglich reingestellt. Ich hoffe, dass die Folien einigermaßen verständlich sind, da sie nicht den kompletten Inhalt meines Vortrages “Techniken des Compilerbaus” umfassen.
Viel Spaß damit!

Foliendownload: Proseminarvortrag zum Thema “Techniken des Compilerbaus”

Vortrag extra large

Wie schon bangend angekündigt, durfte ich heute mein Proseminarsvortrag halten.
Doch, da gab’s noch ein kleines Problemchen – meine Folie war noch nicht komplett, da mir noch ein Abschnitt zum Thema Zwischencode und Optimierung dessen fehlte. Also habe ich mich früh aus dem Bett gequält und wie verrückt mein schnell verfügbares Wissen (das aus dem Kopf, weil WLAN-Connection an der FH flachgefallen ist) in die Tastatur gehauen.
Wie gut, dass ich mittlerweile vom Thema Compilerbau träume. (Ich weiß, langsam nimmt’s doch bizarre Formen an ;) aber dadurch ist auch garantiert, dass ich mir den Stoff im Kopf behalte).
Dann, der große Moment: ich werde nach vorn gebeten, da der Prof immer die Vortragenden ankündigt. Ich innerlich aufgeregt. Ich werde mit diesen Worten vorgestellt: “…nach dem sehr praxisnahem Abschnitt [zu Computerdurchsuchung durch die Polizei] kommen wir zu dem eher theortischem Gebiet des Compilerbaus.”
Alles musste erst einmal über mein Hintegrundbild schmunzeln (zum gucken: hier). Eben mal was anderes, als die leicht bekleideten Damen auf den Laptops der Herren. Und dann fing ich, nervös wie ich bin, an zu erzählen, immer bemüht, es verständlich zu erklären.
Wenn ich ehrlich bin, muss ich zu geben, dass ich größten teils mit Fachbegriffen um mich geworfen habe. Das könnte für Menschen, die sich nicht gerade intensiv wie ich, mit dem Thema auseinander gesetzt haben, zum Problem werden. Daher kamen dann auch immer wieder Einschübe als Erklärung.
Am Ende habe ich die Vortragszeit sogar überzogen. Ich hätte durchaus eine Vorlesungsstunde à 1 std 30 min in Anspruch nehmen können. (Da wäre dann auch die Besprechungszeit inklusive gewesen, weil die ganze Zeitspanne, hätte ich dann doch nicht mit dem Vortrag zubringen wollen). Vor allem zu den Parsertypen hätte ich genug erzählen können…
Zum Schluss sagte der Prof: “Ich fand das toll, wie locker-flockig Sie das Ganze vortragen konnten. War gut.” Und dabei hab ich gedacht, dass ich schlecht war. :D

Ein paar Änderungen

Nun, ich habe eine aktualisierte Fassung meiner Java-Bibliothek MakeItNice mit zusätzlicher Javadoc-Dokumentation zur Erläuterung der einzelnen Routinen in die Code Collection gestellt.
Falls noch nicht bekannt: für JAPL habe ich eine eigene Projektseite eingerichtet (goto JAPL). Dort wird dann auch der JAPL-Compiler zum Downlaod stehen, wenn ich es schaffe. Und dazu noch etwas Dokumentation (zum Beispiel die Grammatik von JAPL)

Jetzt geht’s in die heiße Phase

Nächste Woche, Montag 21.05.07 bin ich als “Ersatz-” Kandidat für den Proseminarvortrag vorgemerkt. Dann darf ich, wenn einer der für diesen Tag vorgesehenen Referenten ausfällt, über “Techniken des Compilerbaus” referieren, ansonsten bin ich am 04.06.07 dran. Der näherrückende Termin macht mich etwas wuschig.
Auf der einen Seite freue ich mich eines meiner Interessensgebiete vorstellen zu können und zum anderen ist da ein wenig Panik, da der Prof – auch unter Professoren-Kollegen – als ernsthafter Mensch empfunden wird, der dem Sachlichen zu getan ist. :?
Dafür muntern mich meine Komilitonen auf:

“Du machst das schon. (Melchior)
Bilder! Bilder sind immer gut. (Elke)

Linux und Windows nebeneinander

Das schon etwas betagte Windows XP auf meinem Rechner war mal wieder reif für eine Neuinstallation – also Systen neu aufsetzen. Und wenn ich da gerade dabei bin, kann ich ja auch das kleine, aber bisher nicht lösbare Problem des booten mittels Bootmanagers Grub bereinigen.
Schnell alle Daten sichern und dann auf beiden Festplatten tabula rasa machen. (Windows XP und Suse Linux haben eine eigene Platte zur Verfügung, denn das ist sicherer).
Schließlich kam dann der spannende Moment, wo ich in Grub den Menupunkt “Windows” wählte, bangte und hoffte, und schließlich XP startete. *freu*. Inzwischen hat mein System auch eine Patrition, die es erlaubt, dass man von Windows und von Linux aus zugreifen kann (also Daten schreiben und lesen), da ich Daten, ohne größeren Aufwand unter beiden Plattformen nutzen will z.B. Java oder C++ Quelltexte etc. Zu meinem Glück fehlt mir nur noch ein funktionierendes WLAN unter SuSE – so würde ich nur noch SuSe verwenden und Windows zum spielen.

The Dawn of the DAUs

Ein paar Horrorszenarien für den unbescholtenen Systemadmin

  1. The Dawn of the DAUs – der Trailer
  2. The Dawn of the DAUs – Cohort of Evil
  3. The Dawn of the DAUs – Bossa Nova

Gesehen hab ich das Ganze erstmalig auf Systemhelden.de

Laptop Alarm!

Heute, ich komme gerade rechtzeitig zur Stunde OOT, geht mein Blick zu einer Reihe, die komplett mit Laptops belegt ist. Spätestens ab da ist klar, dass es sich bei den im Raum befindlichen Studenten nur um Informatikstudenten handeln kann, denn nirgends sieht man solche Konglomerate von Computern außerhalb eines Rechenzentrums.
Nur war der Raum nicht wirklich informatikergerecht ausgestattet: zu wenig Steckdosen und ‘ne Kaffeemaschine hätte das Ganze sicherlich gut abgerundet.

Mein Vortrag nimmt Gestalt an

Aufgrund dessen, dass noch einige vor mir ihr Proseminarvortrag halten müssen, kann ich mich dem Erstellen meiner Powerpoint-Präsentation widmen.
Er beinhaltet momentan diese Punkte:

  1. Einführung ins Thema: Kleine Historie des Compilerbaus
  2. Aufbau eines Compilers: Frontend und Backend, sowie die dazugehörigen Module
  3. Übersicht zur Chomsky-Hierarchie

Aktuelle Baustelle: Eigenschaften der Chomsky-Grammatiken.
Eigentlich habe ich geplant, am Wochenende richtig ran zu klotzen, was den Vortrag betrifft, aber da standen erst einmal ein paar Übungsblätter auf dem Plan, die in dieser Woche abgegeben werden müssen. Und Hausarbeit kam auch nicht zu knapp dran. Manchmal müsste der Tag eben mehr Stunden haben bzw. müsste sich die Erde etwas langsamer drehen, wenn man Sonnenauf- und -untergang als Anfang und Ende eines Tages markiert…

Lustig ist das Informatikerdasein

Und das habe ich neulich aufgeschnappt / selbst verbrochen:

“Damit man weiß, wo der Dackel begraben ist.”
(vom Schöpfer des Hirnlos-einsetzen-Tafelbildes).
Der arme Dackel, möge er in Frieden ruhen.

“Kennen Sie das noch, Telefonzellen?” (…wenig später…) “Münztelefone? Oh, Gott. Beim nächsten Kurs kann man das ja nicht mehr erwähnen.” (Knauber) - “Dann muss man vorher einen Ausflug ins Technikmuseum machen.” (Der Compiler)
Münztelefone, uahaha, wie altmodisch.

Wir entwerfen ein Use-Case-Diagramm zu einem Parkautomaten:
Also, das ist der Techniker.” (ich) – “Hardwareguru, wenn schon!” (Manuel) – “Ok”, (ich, fleißig niederschreibend, Elke neben mir kichernd), “und das da ist der DAU.”
Use Case Fun
Und das war mein Output dazu. (Zum vergrößern draufklicken)

“Schreibe A, denke B, sage C und D ist richtig.” (Schramm)
Das sind aber viele Möglichkeiten. Was soll ich da sagen?

“Was habe ich denn da für einen Mist geschrieben?”
Das zum Thema TPE-Übungsblatt Nummer 2 und das vom Verfasser. Und das Beste, alle (von denen ich es weiß) haben’s so interpretiert, wie’s der Prof nicht geplant hatte :D

“In meinem Zimmer habe ich sowas wie die Chaostheorie.” (Ein Komilitone)

“Ich bin ein grafischorientierter Mensch. Und dann kommt der Algebraiker hinterher gezockelt wie die Baseler Fassnacht.” (Herr Kniffler)

“Man misshandelt die Funktion.” (Herr Nürnberg)
Ableiten ist grausam. ;-)

In der Straßenbahn:
“Ein Matheautist.” (ein Kollege) – “Nee, der Manuel ist ein endlicher Automat, der Mathematik als Eingabe akzeptiert.” (ich) (Manuel grinst.)

Wenn Sie annehmen, dass der User keine Fehler macht… Komischerweise passiert mir das dann beim Testat.” (Herr Schramm) – “In diesem Fall wird dann die UserNotQualifiedException geworfen.” (ich)
Den Spaß müsste man sich mal erlauben. Da leite ich doch gleich mal die entsprechende Klasse von Exception ab…

“Grüß’ mir die Mathematik.” (Manuel)

“C muss man können, um zu wissen, warum man’s nicht macht.” (Herr Schramm)
Ich sag’ jetzt mal nichts (als C++ – Programmiererin). Der Compiler hält die Klappe

In der Straßenbahn, Herr Klaus mit einem Professoren-Kollegen, ich hinter ihm mit einem Kaffee to Go. Die Straßenbahn bremst ordentlich, sodass Herr Klaus fast ins Wanken gerät:
“Ups! Oh, hallo, Sie…” (Herr Klaus, überrascht) – “Kein Problem. Ich hätte Sie aufgefangen – ist doch selbstverständlich, Herr Klaus.” (ich)
Oh, war das ‘ne Schleimspur, aber der Moment, in dem mir der Studiengangsleiter fast in meine Arme fällt, war einfach zu köstlich, um das nicht mit einem netten Spruch zu kommentieren.

Erste Gehversuche in Assembler

Jetzt habe ich schon so reichlich Literatur zum Thema Assembler, da muss ich doch auch mal anfangen, was zu programmieren. Dazu hab ich mir dann den NASM Assembler besorgt.

Erst mal ein Beispielprogramm (es war tatsächlich ein “Hallo Welt”-Programm :) ) angesehen und dann eigene Experimente gemacht, die dann darin endeten, dass sich das Programm aufgehängt hat :°( .

Bisher weiß ich nur, wie man einen Text, der in einer Variable gespeichert ist, ausgibt. Mein jetziger Versuch ist es nun, ein Programm zu schreiben, was zwei Zahlen addiert und das Ergebnis ausgibt. (Ich schäme mich ein wenig :? , aber bei Assembler muss man wirklich klein anfangen).