Personal tools

Prelude

From HaskellWiki

(Difference between revisions)
Jump to: navigation, search
m (Capitalize Prelude everywhere)
m (fixed typo)
 
(One intermediate revision by one user not shown)
Line 5: Line 5:
   
 
==Avoiding Prelude==
 
==Avoiding Prelude==
If you wish to program without a prelude or to use a custom version of it you can suppress its automatic inclusion in several ways.
+
If you wish to program without a prelude or to use a custom version of it you can suppress its automatic inclusion in several ways. The problem is also tackled in a [[No import of Prelude|FAQ entry]].
===Explicit import decalration===
+
===Explicit import declaration ===
 
By including an explicit import declaration of Prelude as follows
 
By including an explicit import declaration of Prelude as follows
 
<haskell>
 
<haskell>

Latest revision as of 14:45, 16 September 2008

Prelude is a module that contains a small set of standard definitions and is included automatically into all Haskell modules.

Contents

[edit] 1 Documentation

The documentation of prelude from GHC can be found here.

[edit] 2 Avoiding Prelude

If you wish to program without a prelude or to use a custom version of it you can suppress its automatic inclusion in several ways. The problem is also tackled in a FAQ entry.

[edit] 2.1 Explicit import declaration

By including an explicit import declaration of Prelude as follows

import Prelude ()

The empty import list in the parenthesis causes nothing to be imported while the automatic import is prevented as well.

[edit] 2.2 Language option

GHC supports a language option -XNoImplicitPrelude (or -fno-implicit-prelude in older GHC) that makes it not import Prelude implicitly. The option can be also specified by adding:

{-# LANGUAGE NoImplicitPrelude #-}

on top of the module.

This option makes it possible to rebind the monadic
do
syntax.