Haskell的错误:在输入解析错误“=”

问题描述 投票:3回答:2

我创造了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,输出

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.

我已经concured这样那样的问题很多次。什么是错在地球上?

haskell
2个回答
8
投票

你说的,你一定有在源文件中没有制表符的意见,但检查你的问题的根源,确实存在in令牌前一个权利。替换与空间的适当数量,你会被大家看好。


1
投票

你必须删除所有选项卡,并用空格改变它。我希望这个指令可以帮助你。

© www.soinside.com 2019 - 2024. All rights reserved.