1. 2. 3. Teil 12 - Erweiterung: Rechnen und Schreiben mit Haskell Überprüfe, ob auf Deinem PC das Programm ghc installiert ist. Gib im Terminal die folgenden Befehle ein und notiere jeweils die Ausgabe: Nr. Prompt Befehl Ausgabe ghci 1 $ 2 Prelude> 3 * 5 3 Prelude> 4 ^ 2 -1 4 Prelude> (1 - 5) ^ (3 * 2 - 4) 5 Prelude> sqrt 4 6 Prelude> "Hallo im " ++ "Haskell-Interpreter" 7 Prelude> :quit Speichere den folgenden Text in eine Datei hallo_in_haskell.hs ins Verzeichnis ~/Desktop main = putStrLn "Hallo in Haskell!" Kompiliere nun zunächst den Quelltext und führe anschließend das kompilierte Programm aus: $ cd Desktop $ ghc -o hallo_in_haskell hallo_in_haskell.hs $ ./hallo_in_haskell 4. Speichere den folgenden Text in eine Datei fakultaet_int.hs ins Verzeichnis ~/Desktop fakultaet::Int -> Int fakultaet 0 = 1 fakultaet n = n * (fakultaet (n-1)) Schlage den Begriff Fakultät nach Starte nun diese Datei im interaktiven Haskell-Interpreter GHCI wie folgt: $ ghci Prelude> :cd Desktop Prelude> :load fakultaet_int.hs *Main> fakultaet 1 *Main> fakultaet 2 *Main> fakultaet 3 *Main> fakultaet 4 *Main> fakultaet 5 *Main> fakultaet 25 *Main> :quit 5. Wert: Wert: Wert: Wert: Wert: Wert: Speichere den folgenden Text in eine Datei fakultaet_komp.hs ins Verzeichnis ~/Desktop main = print (fakultaet 5) fakultaet::Int -> Int fakultaet 0 = 1 fakultaet n = n * (fakultaet (n - 1)) neue Zeile im Vergleich zu Aufgabe 4 Kompiliere nun wieder wie in Aufgabe 3 den Quelltext und führe anschließend das Programm aus: $ cd Desktop $ ghc -o fakultaet_komp fakultaet_komp.hs $ ./fakultaet_komp 6. Speichere den folgenden Text in eine Datei fakultaet.py ins Verzeichnis ~/Desktop #!/usr/bin/env python def fakultaet(x): if x > 1: return x * fakultaet(x - 1) else: return 1 print fakultaet(5) Starte dieses Programm und vergleiche es mit denen in Haskell. Ist Python wirklich eine Skriptsprache?