没有Prelude的ghci会话

时间:2011-10-11 21:14:30

标签: haskell ghci

这个问题出现在#haskell irc chat:

  

如何在不导入前奏的情况下启动ghci?

可能的答案显而易见:

  

ghci -XNoImplicitPrelude,或使用import Prelude ()

加载文件

后者似乎有效,而前者则不然。但是,import Prelude ()从Prelude导入声明的实例,对吧?有没有更好的方法来创建一个ghci会话而不加载Prelude?

2 个答案:

答案 0 :(得分:17)

% ghci                    
GHCi, version 7.0.4: http://www.haskell.org/ghc/  :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Loading package ffi-1.0 ... linking ... done.
Prelude> :m -Prelude 
> :i map

Top level: Not in scope: `map'
> :i Eq

Top level: Not in scope: data constructor `Eq'

但是,我不确定实例以及ghci如何处理它们。

您是否关注某个特定实例?

答案 1 :(得分:2)

接受的答案似乎不再起作用了。这在ghci 8.0.2中有效。

Prelude> :set -XNoImplicitPrelude
Prelude> :m -Prelude
>