Właśnie odkryłem, że taDlaczego jest to błąd składniowy w przypadku trafień kresowych bez dodatkowego wcięcia i jaki jest styl zalecany do obejścia tego?
foo = case ((),()) of
(()
,()) ->()
nie z
/tmp/wtmpf-file11080.hs:3:8:
parse error (possibly incorrect indentation or mismatched brackets)
To może być wykonane do pracy wcięć drugą linię wzoru
foo = case ((),()) of
(()
,()) ->()
ale czuje niezgodne z moim zwykły styl, zwłaszcza w przypadku
bar = case (some lengthy :: Complicated typed expression
, another also lengthy :: Expression with (Other types)) of
(Complicated (Pattern match) to (unwrap)
, Expression that's (Again not so short)) -> the Rest of my Code
W jaki sposób powyższe powinny być przepisane/sformatowane, aby wyglądały najbardziej spójnie?
Jeśli chcesz tylko zminimalizować szum liniowy ze złożonego wzoru, możesz go zawinąć we wzór synonimu lub umieścić wyrażenie "case" w funkcji wyższego rzędu a la 'maybe' /' either'/'foldr ' –