Aquí hay un ejemplo que escribí que usa if-else
ramas y expresiones de guardia. ¿Cuándo es uno más apropiado sobre el otro? La razón principal por la que quiero saber esto es porque los idiomas suelen tener una forma idiomática de hacer las cosas.¿Cuándo son apropiadas las expresiones de 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 para, además de estar en lo cierto, "O (n²) dificultad de lectura" – delnan
@delnan - Tal vez estaban pensando * "O (n²) ruido de señal en relación" * con 'n' es el número de condiciones. – ChaosPandion