Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Hauptstudiumsprüfungen » Lehrstuhl 2 » hass-2013   (Übersicht)

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
pruefungen:hauptstudium:ls2:hass-2013 [25.07.2013 21:17] – angelegt gakupruefungen:hauptstudium:ls2:hass-2013 [02.08.2013 14:12] (aktuell) – *check sonst wohl keiner goldkatze
Zeile 1: Zeile 1:
-Hallo Leute,  +<note tip> 
-mir wurden folgende Fragen in der mündlichen Prüfung gestellt:  +Diese Seite wurde [[prog_haskell_2013ss_a|verschoben]]
- +</note>
-  - Was finden Sie an Haskell gut?  +
-  - Was unterscheidet Haskell von anderen Programmiersprachen?  +
-  - Wie ist zu erklären, dass Haskell nur einen Parameter hat? +
-  - Wie sind algebraische Datentypen in Haskell aufgebaut?  +
-  - Es wurden die zwei Implementierungen von einem StandBinTree vorgezeigt. Ein Mal bestand der Konstruktor aus einem Dreier-Tupel, das anderemal wurde er mit Hilfe des Curry-Styles geschriebenDas war zu erkennen. (Die konkrete Implementierung befindet sich im Skript mit dem Kommentar, Tupelschreibweise und Curry-Style.)  +
-  - Wie kann man die Show-Funktion auf für einen Datentyp Tree (der aus der Vorlesung) implementieren? Er wollte drei verschiedene Wege hören. (per deriving, per "Instanz-machen" und per eigner Implementierung)  +
-  - Welche show-Funktion wird für einen Baum t1 ausgeführt, wenn ich selbst eine show-Funktion geschrieben habe und den Tree von show ableiten lasse? (Eingabe in Haskell t1 --Ausgabe der impliziten show-Funktion. Auf meine eigene Funktion wird nur zugegriffen, wenn ich sie explizit aufrufe, z.B. showTree.)  +
-   - Was ist der Vorteil von algebraischen Datentypen? (Pattern-Matching der Konstruktoren)  +
-  - Wie sind Klassen in Haskell aufgebaut? (class Name parametertyp where ..., wichtig, der parametertyp ist notwendig) +
-  - Warum funktioniert das Pattern-Matching nicht bei der Implementierung von Methoden in Klassen? (Weil der Parametertyp nicht bekannt ist)  +
-  - Wie sind Module aufgebaut?  +
-  - Wie funktiniert das Exportieren? (ohne Klammer = alles, mit Klammer = nur Klammerinhalt)  +
-  - Was wird exportiert, wenn in der Klammer ein algebraischer Datentyp steht? Werden auch seine Funktionen exportiert? (Nein, nur der Konstruktor, zumindest hatte ich das so in der Prüfung verstanden.)  +
-  - Werden importierte Module selbst wieder exportiert, wenn das Module irgendwo importiert wird? (Wenn in der Klammer nichts steht, ja.)  +
-  - Was bedeutet das Schlüsselwort "qualified"? (Auf Funktionen zugreifen, durch ihren Präfix. Von Vorteil bei doppelten Funktionsnamen.)  +
-  - Was bedeutet das Schlüsselwort "hiding"? (Das was in hiding steht, wird exportiert, aber nicht verwendet. Bin mir nicht mehr zu 100% sicher, ob das so stimmt. In den Vorlesungsfolien stehts aber drin.)  +
-  - Was ist Lazy Evaluation? (Parameter werden **erst** und **nur soweit** ausgewertet, wie benötigt. Genau so sollte man das sagen.)  +
- +
-Ich hoffe ich konnte jemanden damit bei seiner Prüfung helfen. Stehe für weitere Fragen gerne bereit.  +
-Grüße +
-Gaku +