[project @ 2003-08-22 06:29:42 by panne]
[ghc-hetmet.git] / ghc / docs / libraries.html.in
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <HTML>
3   <HEAD>
4     <TITLE>Haskell Hierarchical Libraries</TITLE>
5   </HEAD>
6
7   <BODY>
8     <H1>Haskell Hierarchical Libraries</H1>
9
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>
15
16     <DL>
17       <DT>
18         <A HREF="base/index.html"><TT>base</TT></a>
19       </DT><DD>
20         the Prelude, and a large collection of useful libraries.
21       </DD>
22       <DT>
23         <A HREF="haskell98/index.html"><TT>haskell98</TT></a>
24       </DT><DD>
25         Haskell 98 and FFI Standard Libraries.
26       </DD>
27       <DT>
28         <A HREF="haskell-src/index.html"><TT>haskell-src</TT></a>
29       </DT><DD>
30         manipulating Haskell source code.
31       </DD>
32       <DT>
33         <A HREF="network/index.html"><TT>network</TT></a>
34       </DT><DD>
35         networking support libraries.
36       </DD>
37       <DT>
38         <A HREF="parsec/index.html"><TT>parsec</TT></a>
39       </DT><DD>
40         monadic parser combinators.
41       </DD>
42       <DT>
43         <A HREF="QuickCheck/index.html"><TT>QuickCheck</TT></a>
44       </DT><DD>
45         automatic specification-based testing.
46       </DD>
47       <DT>
48         <A HREF="readline/index.html"><TT>readline</TT></a>
49       </DT><DD>
50         a library for interactively reading input from the console.
51       </DD>
52 @unixHTMLStart@
53       <DT>
54         <A HREF="unix/index.html"><TT>unix</TT></a>
55       </DT><DD>
56         supplies POSIX functionality.
57       </DD>
58 @unixHTMLEnd@
59 @HOpenGLHTMLStart@
60       <DT>
61         <A HREF="OpenGL/index.html"><TT>OpenGL</TT></a>
62       </DT><DD>
63         3D rendering.
64       </DD>
65       <DT>
66         <A HREF="GLUT/index.html"><TT>GLUT</TT></a>
67       </DT><DD>
68         the OpenGL utility toolkit.
69       </DD>
70 @HOpenGLHTMLEnd@
71 @ObjectIOHTMLStart@
72       <DT>
73         <A HREF="ObjectIO/index.html"><TT>ObjectIO</TT></a>
74       </DT><DD>
75         GUI library.
76       </DD>
77 @ObjectIOHTMLEnd@
78     </DL>
79
80     <H2>Implementation-specific notes</H2>
81
82     <DL>
83       <DT><A HREF="http://www.haskell.org/ghc/">GHC/GHCi</A></DT>
84       <DD>
85         Most of the time, all the packages are available without the
86         need to use any additional command-line options.  The only
87         time when this is not the case is when linking a program on the
88         command line, without using the <tt>--make</tt> option: in this
89         case you must list all the packages to link to by adding the
90         <tt>-package</tt> <i>P</i> flag (where <i>P</i> is the package
91         name) to the command line for each package.
92         See the <a href="users_guide/users-guide.html">User's Guide</a>
93         for more details.
94       </DD>
95
96       <DT><A HREF="http://www.haskell.org/hugs/">Hugs 98</A></DT>
97       <DD>
98         Hugs provides almost all of the modules in the
99         <A HREF="base/index.html"><TT>base</TT></a> package
100         and all the modules in the
101         <A HREF="haskell98/index.html"><TT>haskell98</TT></a>,
102         <A HREF="haskell-src/index.html"><TT>haskell-src</TT></a>,
103         <A HREF="network/index.html"><TT>network</TT></a>,
104         <A HREF="parsec/index.html"><TT>parsec</TT></a> and
105         <A HREF="QuickCheck/index.html"><TT>QuickCheck</TT></a> packages.
106 @unixHTMLStart@
107         Most of the modules in the <A HREF="unix/index.html"><TT>unix</TT></a>
108         package are supported, too.
109 @unixHTMLEnd@
110 @HOpenGLHTMLStart@
111         If the target platform supports OpenGL, the
112         <A HREF="OpenGL/index.html"><TT>OpenGL</TT></a> and
113         <A HREF="GLUT/index.html"><TT>GLUT</TT></a> packages are supported too.
114 @HOpenGLHTMLEnd@
115         All those modules are always available, as a single hierarchy;
116         Hugs does not use the package subdivision.
117       </DD>
118
119       <DT><A HREF="http://www.haskell.org/nhc98/">Nhc98</A></DT>
120       <DD>
121         The modules of the <tt>haskell98</tt> package are available
122         without the need to use any additional compile-time options.
123         To use modules from some other package <i>P</i> with Nhc98,
124         add the compile-time option <tt>-package</tt> <i>P</i>.
125         Nhc98 currently provides many of the modules in the
126         <tt>base</tt> package (see the
127         <a href="http://www.haskell.org/nhc98/libraries.html">Nhc98 libraries page</a>
128         for a list).
129       </DD>
130
131     </DL>
132
133   </BODY>
134 </HTML>