The Hierarchical Module Namespace Extension is a modest extension to Haskell 98 which replaces the existing flat module namespace with a hierarchy.
This document constitutes a proposal for how the new hierarchical namespace should be used. It is not an addendum to the Haskell 98 report: the contents of this document are still under discussion on the libraries@haskell.org mailing list, and are subject to change.
The most up to date version of this document can be found in the GHC CVS repository in the directory fptools/libraries/doc.
The proposal has several parts:
An allocation of the new module namespace to existing and non-existent libraries, people, organisations, and local use.
A policy and procedure for allocating new parts of the namespace.
A set of libraries which are under the control of the community and have reference implementations. These libraries will vary from almost completely stable (eg. the Prelude) to experimental libraries with fast-changing APIs. Throughout this document, these libraries shall be referred to as the Reference Libraries. The reference libraries serve to both define the library APIs, and provide implementations; in most cases this will be the primary implementation of that library.
In addition, this document also describes:
Guidelines and conventions for organising the hierarchy.
Our policy with respect to the design and evolution of library APIs, versioning of library APIs, and maintenance of the reference implementation.
A set of conventions for coding style and portability within the libraries.
| Next | ||
| How to contribute |