1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
4 <TITLE>Haskell Hierarchical Libraries</TITLE>
8 <H1>Haskell Hierarchical Libraries</H1>
10 <P>The libraries are divided into several <EM>packages</EM>.
11 NOTE: there is not always a clean division between packages in the
12 hierarchy, which means a node and its children might be in
13 different packages. If you're looking for a specific module, try
14 all the packages below.</P>
18 <A HREF="base/index.html"><TT>base</TT></a>
20 the Prelude, and a large collection of useful libraries.
23 <A HREF="haskell98/index.html"><TT>haskell98</TT></a>
25 Haskell 98 and FFI Standard Libraries.
28 <A HREF="parsec/index.html"><TT>parsec</TT></a>
30 monadic parser combinators.
33 <A HREF="network/index.html"><TT>network</TT></a>
35 networking support libraries.
38 <A HREF="haskell-src/index.html"><TT>haskell-src</TT></a>
40 manipulating Haskell source code.
43 <A HREF="readline/index.html"><TT>readline</TT></a>
45 a library for interactively reading input from the console.
49 <A HREF="unix/index.html"><TT>unix</TT></a>
51 supplies POSIX functionality.
56 <A HREF="OpenGL/index.html"><TT>OpenGL</TT></a>
61 <A HREF="GLUT/index.html"><TT>GLUT</TT></a>
63 the OpenGL utility toolkit.
68 <A HREF="ObjectIO/index.html"><TT>ObjectIO</TT></a>
75 <H2>Implementation-specific notes</H2>
78 <DT><A HREF="http://www.haskell.org/ghc/">GHC/GHCi</A></DT>
80 Most of the time, all the packages are available without the
81 need to use any additional command-line options. The only
82 time when this is not the case is when linking a program on the
83 command line, without using the <tt>--make</tt> option: in this
84 case you must list all the packages to link to by adding the
85 <tt>-package</tt> <i>P</i> flag (where <i>P</i> is the package
86 name) to the command line for each package.
87 See the <a href="users_guide/users-guide.html">User's Guide</a>
91 <DT><A HREF="http://www.haskell.org/hugs/">Hugs 98</A></DT>
93 Hugs provides almost all of the modules in the
94 <A HREF="base/index.html"><TT>base</TT></a> package
95 and all the modules in the
96 <A HREF="haskell98/index.html"><TT>haskell98</TT></a>,
97 <A HREF="network/index.html"><TT>network</TT></a>,
98 <A HREF="parsec/index.html"><TT>parsec</TT></a> and
99 <A HREF="haskell-src/index.html"><TT>haskell-src</TT></a> packages.
101 Most of the modules in the <A HREF="unix/index.html"><TT>unix</TT></a> package are supported, too.
103 All those modules are always available, as a single hierarchy;
104 Hugs does not use the package subdivision.
107 <DT><A HREF="http://www.haskell.org/nhc98/">Nhc98</A></DT>
109 To use modules from a package <i>P</i> with Nhc98,
110 add the compile-time option <tt>-package</tt> <i>P</i>.
111 Nhc98 currently provides many of the modules in the
112 <tt>base</tt> package (see the
113 <a href="http://www.haskell.org/nhc98/libraries.html">Nhc98 libraries page</a>