GHCI сессия без прелюдии - PullRequest
       6

GHCI сессия без прелюдии

19 голосов
/ 12 октября 2011

Этот вопрос возник в чате #haskell irc:

Как запустить ghci без импорта прелюдии?

Возможный ответ казался очевидным:

ghci -XNoImplicitPrelude или загрузите файл с помощью import Prelude ()

Последний, кажется, работает, а первый, как ни странно, не работает. Однако import Prelude () импортирует объявленные экземпляры из Prelude, верно? Есть ли лучший способ создать сеанс ghci без загрузки Prelude?

Ответы [ 2 ]

17 голосов
/ 12 октября 2011
% 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 справляется с ними.

Есть ли конкретный случай, который вас беспокоит?

2 голосов
/ 14 ноября 2017

Принятый ответ, похоже, больше не работает.Это работает в ghci 8.0.2.

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