The Haskell 1.4 Library Report
top | back | next | contents

1  Introduction

This document defines the standard Haskell libraries. Like the Prelude, these libraries are a required part of a Haskell implementation. Unlike the Prelude, however, these modules must be explicitly imported into scope.

When possible, library functions are described solely by executable Haskell code. Functions which require implementation-dependent primitives are represented by type signatures without definitions. Some data types are implementation-dependent: these are indicated by comments in the source.

The code found here is a specification, rather than an implementation. Implementations may choose more efficient versions of these functions. However, all properties of these specifications must be preserved, including strictness properties.

Classes defined in libraries may be derivable. This report includes the derivation of such classes when appropriate. When Prelude types are instances of derivable library classes a commented empty instance declaration is used. The comment, "as derived", indicates that the instance is the same as would have been generated by a deriving in the Prelude type declaration.

The libraries presented here represent a selection of basic functionality that are expected to be useful to many Haskell programmers. Most implementations provide further libraries which are not a recognized part of the Haskell standard.

Many other libraries are being actively considered. The latest version of this report as well as proposed additions to the library can be found on the web at haskell.org.

We would like to express our thanks to those who have contributed directly or indirectly to this report without being named as authors. A proper acknowledgement list will appear in the final (non-draft) version of the report. We would, however, especially like to thank Andy Gill, who made significant contributions to the I/O library; Sandra Loosemore, who made many important comments on the I/O library; and Tony Davie who has carefully examined much of the library code.

The Haskell Committee March 1997


The Haskell 1.4 Library Report
top | back | next | contents
April 4, 1997