let x=1
y=2
z=3
non funziona in GHCi, costringendomi a utilizzare let {x=1;y=2;y=3}
invece. Come posso risolvere questo problema?Impossibile immettere istruzioni multilinea in GHCi
let x=1
y=2
z=3
non funziona in GHCi, costringendomi a utilizzare let {x=1;y=2;y=3}
invece. Come posso risolvere questo problema?Impossibile immettere istruzioni multilinea in GHCi
The documentation dice:
GHCi ha anche una modalità multilinea, abilitato da: set + m, in cui GHCi rileva automaticamente quando l'istruzione corrente è incompiuta e consente ulteriori linee da aggiungere. Un ingresso su più righe viene terminato con una linea vuota.
La modalità multilinea rende GHCi molto simile, ad es. l'interprete Python:
Prelude> :set +m
Prelude> let x = 1
Prelude| y = 2
Prelude| z = 3
Prelude|
Prelude> (x, y, z)
(1,2,3)
Questa gemma nascosta è meravigliosa per giocare con codice leggibile!
Se si desidera che questo sia il comportamento predefinito, è possibile creare un file .ghci
nella home directory con una riga che dice :set +m
. (Ora che è venuto fuori, in realtà l'ho fatto.)