Specs
GHC 6.12.1
Mac OS X 10.6.4 x64
MacBook Pro
Problem
我使用时遇到问题let
句法。以下代码拒绝编译:
module Main where
main = let x = 1
y = 2
z = 3
in putStrLn $ "X = " ++ show x ++ "\nY = " ++ show y ++ "\nZ = " ++ show z
我尝试使用 Tab 键进入y = 2
and z = 3
更。没有骰子。
(不需要的)解决方案
我获得要编译的代码的唯一方法是
- 用空格替换硬制表符。
- 更换
let
条款与where
clause.
Saizan 在 #haskell 上解释说作业在 let 表达式中必须对齐,而不是let本身。只要分配一致,就可以使用硬选项卡或软选项卡。
正确代码:
module Main where
main = let
x = 1
y = 2
z = 3
in putStrLn $ "X = " ++ show x ++ "\nY = " ++ show y ++ "\nZ = " ++ show z
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)