TU Wien:Programmiersprachen VU (Puntigam)

Aus VoWi
Zur Navigation springen Zur Suche springen
Ähnlich benannte LVAs (Materialien):

Daten[Bearbeiten | Quelltext bearbeiten]

Vortragende Franz Puntigam
ECTS 3,0
Alias Programming Languages (en)
Letzte Abhaltung 2024S
Sprache Deutsch
Mattermost programmiersprachenRegisterMattermost-Infos
Links tiss:185208, eLearning
Zuordnungen
Masterstudium Logic and Computation Modul Programming Languages and Verification (Gebundenes Wahlfach)
Masterstudium Software Engineering & Internet Computing Modul Computersprachen und Programmierung (Gebundenes Wahlfach)


Inhalt[Bearbeiten | Quelltext bearbeiten]

In der Vorlesung werden Konzepte von programmiersprachen besprochen.

Siehe: VL Programmiersprachen (basically the same, nur dass es damals als VL und nicht als VU gebranded war)

Ablauf[Bearbeiten | Quelltext bearbeiten]

2022S:

  • 6 Vorlesunen á 100 Minuten.
  • 3 Übungen in Gruppen von 2-4 Personen
  • Mündliche Prüfung

Benötigte/Empfehlenswerte Vorkenntnisse[Bearbeiten | Quelltext bearbeiten]

  • Kenntnisse aus der Programmierung - besser in unterschiedlichen Paradigmen (also OOP und FP)

Vortrag[Bearbeiten | Quelltext bearbeiten]

2022S:

Es gab 6 Vorlesungen á 100 Minuten. Der Vortrag war in meinen Augen recht angenehm und gut zu folgen. Es konnten während der VO Fragen gestellt werden und diese wurden umfangreich beantwortet.

Die Vorlesungen behandeln folgende Themen:

  • 1. VO: Übersicht, Terminologie, Syntax, Semantik, Paradigmen
  • 2. VO: Implementierung einer Programmiersprache in einem ASSEMBLER
  • 3. VO: Datentypen
  • 4. VO: Control Structures, Exceptions und Concurrency
  • 5. VO: OOP-Sprachen
  • 6. VO: Funktionale Sprachen

Der Vorlesungsstoff basiert auf dem Buch Carlo Ghezzi, Mehdi Jazayeri. Programming Language Concepts. 3rd edition, John Wiley & Sons, 1998, ISBN 0-471-10426-4

Übungen[Bearbeiten | Quelltext bearbeiten]

2022S: Die Übung wurde als Team von 2-4 Personen durchgeführt (wobei gesagt wurde, dass größere Teams lieber gesehen werden). Die Übungen hatten den folgenden Inhalt:

  • UE 1: Implementieren einer Stackbasierten Sprache (Taschenrechner) und Implementieren von vorgegebene Programmen in dieser Sprache
  • UE 2: Implementieren eines Interpreters für eine (selbst-definierte) funktionale Sprache in einer dynamisch typisierten Sprache (z.B. Ruby, Python)
  • UE 3: Implementieren eines "syntax-aware" Editor für die Programmiersprache aus UE 2.

Prüfung, Benotung[Bearbeiten | Quelltext bearbeiten]

also er hat gefragt:

1. Unterschiedliche Arten der Parameterübergabe... wie kann man ohne die Implementierung zu sehen feststellen ob etwas call by reference oder call by value result. Call by name erklären; was ist fp(d)? was ein static Link?

2. Monitor erklären in Ada und Java; protected type (Ada) und syncronized (Java) erklären

3. C++ Was gibt das an wenn bei einer Klasse ein Doppelpunkt mit einem Typen dahinter steht.

4. C++ was ist eine pure virtual function

2022S: Die Prüfung findet mündlich bei Prof. Puntigam im Büro statt. Hierbei nimmt Prof. Puntigam das Buch, auf dem die VO basiert, aus seinem Schrank, blättert zu einer Seite und fragt die in den Beispielen vorkommenden Konzepte. (z.B. er öffnet die Seite von Smalltalk und fragt, was denn bei den Beispielen passiert - Wer sendet eine Nachricht an wen?, ...).

Daher ist es sehr ratsam, sich zuvor das Buch durchzulesen. Dieses kann in der Bibliothek ausgeborgt werden.

Dauer der Zeugnisausstellung[Bearbeiten | Quelltext bearbeiten]

Für 2 individuelle mündliche Prüfungstermine, basically instant.

  • 2022S: Am gleichen Tag wie die Prüfung.

Zeitaufwand[Bearbeiten | Quelltext bearbeiten]

2022S: In meinen Augen wirken die Programmieraufgaben auf den ersten Blick mehr, als sie dann sind, vor allem im Vergleich zu FOOP. Ich würde sagen, dass der Aufwand unter den 3 ECTS liegt, sodass man mit FOOP und PS gemeinsam auf einen Aufwand von 6 ECTS kommt.

Unterlagen[Bearbeiten | Quelltext bearbeiten]

noch offen

Tipps[Bearbeiten | Quelltext bearbeiten]

  • Das Buch lesen, da die Beispiele aus dem Buch abgefragt werden
  • 2022S: Diese LVA war mit FOOP (185.211) zeitlich abgestimmt. Daher ist es ratsam, als Gruppe beide LVAs zusammen im gleichen Semester zu machen.

Highlights / Lob[Bearbeiten | Quelltext bearbeiten]

noch offen

Verbesserungsvorschläge / Kritik[Bearbeiten | Quelltext bearbeiten]

noch offen