Ecco un esempio che ho scritto che utilizza i rami if-else
e le espressioni di guardia. Quando è più appropriato rispetto all'altro? La ragione principale per cui voglio sapere questo è perché le lingue hanno tipicamente un modo idiomatico di fare le cose.Quando sono appropriate le espressioni di guardia?
test1 a b =
if mod b 3 ≡ 0 then a + b
else if mod b 5 ≡ 0 then a + b
else a
test2 a b
| mod b 3 ≡ 0 = a + b
| mod b 5 ≡ 0 = a + b
| otherwise = a
+1 per, oltre ad avere ragione, "O (n²) difficoltà di lettura" – delnan
@delnan - Forse stavano pensando * "O (n²) segnale rumore al rapporto" * con 'n' è il numero di condizioni. – ChaosPandion