我仍在努力学习 Haskell 的语法,因为它不同于我以前见过的任何其他编程语言。在大多数命令式编程语言中,可以创建如下嵌套条件语句:
function thing1(x){
if(x > 2){
if(x < 5){
return 3;
}
else if(x < 10){
return 10;
}
else if(x >= 10){
return 6;
}
}
else{
return 4;
}
}
但是,经过几次尝试,我仍然没有弄清楚 Haskell 中的等效语法:我尝试在 Haskell 中创建等效函数,但出现语法错误prog.hs:10:1: parse error on input main'
::
thing1 x =
if x > 2 then
if x < 5 then
3
else if x < 10 then
10
else if(x >= 10)
6
else
4
main = do
putStr(show(thing1 6))
我不确定这里的语法有什么问题:甚至可以像在其他语言中一样在 Haskell 中创建嵌套条件语句吗?