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