Ответ 1
Принятый ответ больше не работает. Это работает в ghci 8.0.2.
Prelude> :set -XNoImplicitPrelude
Prelude> :m -Prelude
>
Этот вопрос возник из-за чата #haskell irc:
Как запустить ghci без импорта прелюдии?
Возможный ответ казался очевидным:
ghci -XNoImplicitPrelude
или загрузите файл с помощьюimport Prelude ()
Последний, похоже, работает, а первый странно этого не делает. Однако import Prelude ()
импортирует объявленные экземпляры из Prelude, не так ли? Есть ли лучший способ создания сеанса ghci без загрузки Prelude вообще?
Принятый ответ больше не работает. Это работает в ghci 8.0.2.
Prelude> :set -XNoImplicitPrelude
Prelude> :m -Prelude
>
% 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 имеет дело с ними.
Есть ли какой-то конкретный пример, о котором вы беспокоитесь?