Ich versuche, jede einfache Funktion zu definieren, die mehrere Linien in GHCI, nehmen Sie die folgenden als Beispiel umfasst:Wie definiert man eine Funktion in ghci über mehrere Zeilen hinweg?
let abs n | n >= 0 = n
| otherwise = -n
ich nach der ersten Zeile durch Drücken der Eingabetaste habe versucht Bisher:
Prelude> let abs n | n >= 0 = n
Prelude> | otherwise = -n
<interactive>:1:0: parse error on input `|'
ich habe auch versucht, die :{
und :}
Befehle zu verwenden, aber ich bekomme nicht weit:
Prelude> :{
unknown command ':{'
use :? for help.
ich bin mit G HC Interactive Version 6.6 für Haskell 98 unter Linux, was fehlt mir?
Bitte aktualisieren Sie Ihre GHC-Installation. GHC 6.6 ist fast 5 Jahre alt! Die neuesten Versionen von Haskell finden Sie hier: http://haskell.org/platform –
mögliche Duplikate von [Mehrzeilenbefehle in GHCi] (http://stackoverflow.com/questions/8443035/multi-line-commands-in- ghci) – Mark
@Mark Dieses OP hat bereits die Lösungen für dieses Problem ausprobiert. Dieses Problem liegt an einem veralteten ghci, nicht an mangelndem Wissen darüber, was zu tun ist. Lösung hier: Upgrade. Lösung dort: benutze ': {', ':}'. – AndrewC