Trovo che io sia spesso incoerente su quanto indentino le cose, dove inserisco nuove righe, ecc. Esistono linee guida ufficiali o ampiamente seguite su come uno spazio bianco di layout debba essere inserito in Haskell? Nota che non sto chiedendo cosa è legale; Sto chiedendo che cosa è buona pratica, sulla falsariga di Good Haskell coding style of if/else control block?, ma molto più in generale. Sono particolarmente interessato a sapere cosa fanno le persone con i blocchi, i blocchi, i blocchi e le istruzioni caso, specialmente quando tali elementi sono nidificati l'uno nell'altro o all'interno di diverse definizioni di funzione.Stile rientranza Haskell
risposta
Un piccolo pungolo se posso.
Principalmente mi piace la linea guida collegata a hammar. Ma, mi piace questo stile:
send :: Socket
-> ByteString
-> IO Int
Preferisco di gran lunga
send ::
Socket ->
ByteString ->
IO Int
In quest'ultimo stile, gli argomenti e il risultato un aspetto diverso (gli argomenti hanno ->
s dopo di loro).
Mi piace di più. Le persone potrebbero non essere d'accordo ed è principalmente solo questione di gusti personali. Purtroppo l'eglef hack sembra supportare solo il precedente stile :(
Mi chiedo anche se la regola 80 caratteri per riga ci sia in retrospettiva di pe ople che ha bisogno di perforare la loro fonte haskell sulle carte? – Ingo
@Ingo A mio parere, i limiti delle colonne utilizzano meglio lo spazio. In genere metto diverse colonne di testo affiancate sullo schermo. – Heatsink
@Heatsink molto vero. Ma perché 80? Perché non 72 o 96? – Ingo
[Indentazione] (http://en.wikibooks.org/wiki/Haskell/Indentation) su Wikibooks dovrebbe coprire quello che stai cercando. –
[Ecco un buona serie di linee guida generali sullo stile Haskell, incluso il rientro] (https://github.com/tibbe/haskell-style-guide/blob/master/haskell-style.md). – hammar
@David: si tratta di ciò che è legale, non di ciò che è buona pratica – Mohan