Lisp / Scheme Verständnisfragen (aus ner Uniklausur)



  • Hallo!

    ich habe hier folgende JA/NEIN-Fragen aus einer Uni-Klausur bzgl. Scheme-Programmierung.
    Wenn ich sie selber lösen könnte, oder jemanden kennen würde der die Fragen wirklich verstehen würde - dann würd ich Euch nicht nerven....
    Die Fragen sind auch einer alten Klausur, und es kann gut sein, dass die ein oder andere beim nächsten Mal wieder drannkommt.

    Ich denke wenn einer im Thema wirklich drinn ist, ist das total easy - für mich aber leider nicht... 😢
    Vielleicht guckt ja mal einer kurz drüber!

    VIELEN VIELEN Dank schonmal im Voraus!
    Lieben Gruß
    Jennifer

    a) Ein funktionales Programm beschreibt eine Folge von Zustandsänderungen der Maschine.

    b) Die Bezeichnung Funktion höherer Ordnung wird für Funktionen verwendet, die neben atomare Daten auch strukturierte Daten – wie z.B. Listen – verarbeiten können.

    c) Ein abstrakter Datentyp kann als Algebra betrachtet werden.

    d) Ein strenges Typsystem stellt jederzeit sicher, dass auf eine Variable bzw. Objekt nur der typgemäße Satz von Operationen angewendet werden kann.

    e) Die Entwicklung von Programmen mit Hilfe der Methode der „weakest Preconditions“ garantiert fehlerfreie Programme.

    f) Im Constraint Programming gibt es 2 grundlegende Lösungsstrategien:
    - Constraint Satisfaction und
    - Constraint Solving

    g) Lokale Variablen dienen in der Funktionalen Programmierung auch der Vermeidung von Mehrfachberechnungen von Teilausdrücken.

    h) Scheme-Prozeduren mit lokalen Zustandsvariablen können als eine Realisierungsform von Objekten im Sinne der objektorientierten Programmierung angesehen werden.



  • dass soll übrigens nicht so rüberkommen als ob ihr mir hier bei meinen hausaufgaben helfen sollt... nur ich bin mir halt nur total unsicher... hier soweit meine überlegungen:

    a) NEIN - Zustandsänderungen der Maschine währe eher hardwarenahe - also "prozedurale programmierung" zB. C oder pascal

    b) NEIN - höhere Ordnung hat afair was damit zu tun, dass man nicht nur symbole als parameter übergeben kann, sondern auch funktionen.

    c) JA - wikipedia (abstrakter datentyp) "Mathematisch betrachtet handelt es sich um die Spezifikation einer Termalgebra durch....." Kommt das wort "algebra" schonmal drinn vor...

    d) JA - Aber so streng ist Scheme ja nicht so mit den "datentypen" die übergeben werden

    e) keine Ahnung

    f) keine Ahnung

    g) JA

    h) keine Ahnung



  • jennifer_m schrieb:

    a) NEIN - Zustandsänderungen der Maschine währe eher hardwarenahe - also "prozedurale programmierung" zB. C oder pascal

    würde ich auch sagen. funktionale programme machen irgendwas in einem rutsch, ohne irgendwelche zustände zu speichern und so (intern vielleicht schon, aber aus benutzersicht nicht).

    jennifer_m schrieb:

    b) NEIN - höhere Ordnung hat afair was damit zu tun, dass man nicht nur symbole als parameter übergeben kann, sondern auch funktionen.

    stimmt, die hantieren mit funktionen

    jennifer_m schrieb:

    c) JA - wikipedia (abstrakter datentyp) "Mathematisch betrachtet handelt es sich um die Spezifikation einer Termalgebra durch....." Kommt das wort "algebra" schonmal drinn vor...

    schwer zu sagen. zu 'ner algebra gehören irgendwelche verknüpfungen. ein datentyp allein z.b. ein typedef (in C) oder sowas reicht wohl nicht. aber ich weiss nicht, wie das in lisp ist, ob man gleich irgendwelche operatoren für den typ festlegen muss.

    jennifer_m schrieb:

    d) JA - Aber so streng ist Scheme ja nicht so mit den "datentypen" die übergeben werden

    'ja', würde ich auch sagen.

    jennifer_m schrieb:

    g) JA

    auch 'ja'.

    seltsam, von allem wovon du keine ahnung hast, hab ich auch keine ahnung.
    🙂


Anmelden zum Antworten