为什么我不能在GHCi中定义类型?

时间:2011-03-05 07:50:06

标签: haskell ghci

为什么我不能在GHCi中定义类型?

Prelude> data MyBool = T | F

<interactive>:1:0: parse error on input `data'

1 个答案:

答案 0 :(得分:5)

GHCi是一个非常简单的REPL,它读取表达式并打印结果(通常),可以想象为交互式do表达式。允许一般Haskell结构的问题是(a)如何将它们合并到已经加载的程序中,(b)如何在重载或其他重置REPL状态的动作上将它们合并。此外,当定义与已定义的内容冲突时,还有一些问题需要解决。然后有一个简单的事实,即当前的实现只是一个表达式求值程序,而编译新代码则更为复杂。