2016-08-24 20 views
3

ghci.exeディレクトリに新しいquick.hsファイルが作成されました。私は発行すると、コンテンツがハスケルエラー: '='入力時に解析エラーが発生しました

quicksort::(Ord a)=>[a]->[a] 
quicksort []=[] 
quicksort (x:xs)= 
    let smaller = [a |a<-xs,a<=x] 
     larger = [a |a<-xs,a>x] 
    in quicksort smaller ++ [x] ++ quicksort larger 

です:GHCiのコマンドLLINEで迅速リットルを、出力は、私はこの種の問題を何度concuredいる

Prelude> :l quick 
[1 of 1] Compiling Main    (quick.hs, interpreted) 

quick.hs:5:17: error: 
    parse error on input ‘=’ 
    Perhaps you need a 'let' in a 'do' block? 
    e.g. 'let x = 5' instead of 'x = 5' 
Failed, modules loaded: none. 

です。地球上で何が問題なの?

+5

[いいえrepro](http://ideone.com/Zdflsx)ファイルにタブ文字はありませんか? –

+2

私によく見えます。 '-Wall'を使って、スペースではなくコードのタブを報告するかどうかを確認してください。 (上のquick.hsの代わりにquick.shは投稿された質問の入力ミスですか?) – chi

+0

コードを書き換えて、ファイルにタブがないことを確認しました。しかし、エラーはまだそこにあります...... – Julian20151006

答えて

7

コメントには、ソースファイルにタブ文字は含まれていませんが、質問の出所を調べると確信しています。確かにinトークンの前に1つあります。それを適切なスペース数で置き換えれば、あなたはすべてうまくいくでしょう。

+0

私はすべてのタブ文字を適切な数のスペースで置き換えたと誓っていますが、エラーはまだそこにあります – Julian20151006

0

すべてのタブを削除し、スペースで変更する必要があります。この指示があなたに役立つことを願っています。

関連する問題