我正在使用Mountain Lion。我打开终端,然后加载ghci
,我写:l
然后我尝试通过鼠标从桌面拖到终端来加载我的文件(在我的桌面),所以我知道位置是正确的,我得到了这个,谢谢你提前:
Prelude> :l /Users/myusername/Desktop/Test.hs
[1 of 1] Compiling Main ( /Users/myusername/Desktop/Test.hs, interpreted )
/Users/myusername/Desktop/Test.hs:1:7: parse error on input `\'
Failed, modules loaded: none.
Prelude>
编辑:我试图打开的文件(用文本编辑编写)是:
double :: Int -> Int
double x = x + x
答案 0 :(得分:10)
TextEdit 不是明文编辑器(与Windows Notepad不同),因此默认情况下它会在文件中包含格式化垃圾,GHC显然不满意。显然you can still use TextEdit if set up correctly,但是建议使用正确的编程编辑器。像任何Unix一样,OSX带有vi味道,这需要一些时间来习惯,但并不那么难,并且工作正常;至少你可以用它来检查文件中的内容。
vi /Users/myusername/Desktop/Test.hs
或者,甚至更简单
cat /Users/myusername/Desktop/Test.hs
只会为您提供文件的确切内容。
选择最适合使用的编辑器consider this question。
答案 1 :(得分:2)
我在Windows上尝试了相同的程序,但效果很好。
您是否曾尝试进入GHCi内的目录并打开它?
程序将是:
Prelude> :cd /Users/myusername/Desktop/
Prelude> :l Test.hs
对我来说,复制/粘贴你发布的代码,两种情况都适用于Windows。
答案 2 :(得分:1)
\
的存在意味着您从TextEdit获得了RTF(富文本)文件。 RTF是TextEdit的默认格式,它是一种格式,用于提供有关文本字体,大小等信息的纯文本。
我建议使用vi或emacs,但为了解决您的问题,请在TextEdit中打开该文件,然后点击Cmd-Shift-t将您的文件转换为纯文本。