Next
Previous Contents
The Glasgow Haskell Compiler User's Guide, Version 3.00
The GHC Team, Department of Computing Science, University of Glasgow, Glasgow, Scotland, G12 8QQ Email:
glasgow-haskell-{bugs,users}-request@dcs.gla.ac.uk
1.
Introduction to GHC
1.1 The (batch) compilation system components
1.2 What really happens when I ``compile'' a Haskell program?
1.3 Meta-information: Web sites, mailing lists, etc.
1.4 Release notes for version 3-01---2/97
2.
Using GHC
2.1 Overall command-line structure
2.2 Meaningful file suffixes
2.3 Help and verbosity options
2.4 Running the right phases in the right order
2.5 Re-directing the compilation output(s)
2.6 Warnings and sanity-checking
2.7 Separate compilation
2.8 Optimisation (code improvement)
2.9 Options related to a particular phase
2.10 Using Concurrent Haskell
2.11 Using Parallel Haskell
2.12 Running a compiled program
2.13 Profiling
2.14 Debugging the compiler
3.
Advice on: sooner, faster, smaller, stingier
3.1 Sooner: producing a program more quickly
3.2 Faster: producing a program that runs quicker
3.3 Smaller: producing a program that is smaller
3.4 Stingier: producing a program that gobbles less heap space
4.
GHC Language Features
4.1 Unboxed types
4.2 Primitive state-transformer monad
4.3 Primitive arrays, mutable and otherwise
4.4 Using your own
mainIO
4.5 Calling C directly from Haskell
4.6 Multi-parameter type classes
4.7 Local universal quantification
4.8 Concurrent and Parallel Haskell
4.9 Haskell 1.4 vs. Glasgow Haskell 3.00: language non-compliance
5.
The GHC prelude and libraries
5.1 Prelude extensions
5.2 The module
PrelGHC
: really primitive stuff
5.3 GHC/Hugs Extension Libraries
5.4 GHC-only Extension Libraries
5.5 The Posix library
5.6 Miscellaneous libraries
5.7 Interfaces to C libraries
6.
What to do when something goes wrong
6.1 When the compiler ``does the wrong thing''
6.2 When your program ``does the wrong thing''
6.3 How to report a bug in the GHC system
6.4 Hard-core debugging of GHC-compiled programs
7.
Other Haskell utility programs
7.1 Makefile dependencies in Haskell: using
mkdependHS
7.2 Emacs `TAGS' for Haskell:
hstags
7.3 ``Yacc for Haskell'':
happy
7.4 Pretty-printing Haskell:
pphs
Next
Previous Contents