2014/05/18_初心者のHaskellその1 インデントが重要だったという話

以下のソースは、H本に記載されているものです。
引数を2つとってOrderingを返す。
myCompare関数です。


○正しい例
myCompare :: (Ord a) => a -> a-> Ordering
a `myCompare` b
  | a == b = EQ
  | a <= b = LT
  | otherwise = GT

✕だめな例
myCompare :: (Ord a) => a -> a-> Ordering
a `myCompare` b
| a == b = EQ
| a <= b = LT
| otherwise = GT

だめな例の関数をロードすると以下のエラーが表示された。
hello.hs:52:1: parse error on input `|'
なぜ!?と思った。
調べてみると、どうやらインデントにも意味があるとのこと。
結論
Vimのプラグイン入れることにした。