考虑下面的内容是我的代码
import Data.Char
import Data.List
-- square
square :: Int -> Int
square n = n * n
虽然这个方形功能看起来很整洁,但是当我运行它时
ghci ./square.hs
返回
[1 of 1] Compiling Main ( ./LabSheet1-solns.hs, interpreted )
./LabSheet1-solns.hs:5:1:
parse error on input `square'
Failed, modules loaded: none.
我的翻译可能有问题。
我在OS X 10.8.1上运行
$ ghci --version
The Glorious Glasgow Haskell Compilation System, version 7.4.2
有任何线索吗?
答案 0 :(得分:10)
您的import
语句缩进一个空格。这基本上将“一个空格”设置为文件的基本缩进级别。由于square
的定义没有缩进一个空格,因此会出现语法错误。
要解决此问题,请将所有行缩进一个空格,或者最好不要缩进import
语句。
答案 1 :(得分:5)
修复缩进:
import Data.Char
import Data.List
-- square
square :: Int -> Int
square n = n * n