いくつかのコードをチェックしていて、そのうちの1つを書き込もうとしましたが、解析「=」エラーが発生し続けますが、ソースからコードをコピーして貼り付けると正常に動作するので、これの違いは何ですか;
quicksort2 :: (Ord a) => [a] -> [a]
quicksort2 [] = []
quicksort2 (x:xs) =
let smallerSorted = quicksort2 [a | a <- xs, a <= x]
biggerSorted = quicksort2 [a | a <- xs, a > x]
in smallerSorted ++ [x] ++ biggerSorted
この ;
quicksort :: (Ord a) => [a] -> [a]
quicksort [] = []
quicksort (x:xs) =
let smallerSorted = quicksort [a | a <- xs, a <= x]
biggerSorted = quicksort [a | a <- xs, a > x]
in smallerSorted ++ [x] ++ biggerSorted
quicksort2 では解析エラーが発生しますが、quicksort では発生しません。では、違いはどこにあるのでしょうか。
エラー -> .hs:5:26: 入力 `=' の解析エラー