The Hugs 98 User's Guide
Table of Contents
The Hugs 98 License
1.
Introduction
Other sources of information
Other documentation
Mailing lists
2.
Using Hugs
Basic operation
Loading and editing Haskell module files
Getting information
Miscellaneous commands
3.
Changing the behaviour of Hugs
Hugs options
Language options
Module loading options
Specifying a source file editor
Evaluation and printing options
Resource usage options
Environment variables used by Hugs
Standalone programs
Compiling modules that use the Foreign Function Interface
4.
Hugs
vs
Haskell 98 and addenda
Haskell 98 non-compliance
Lexical structure
Expressions
Declarations and bindings
Modules
Predefined types and classes
Addenda to Haskell 98
Foreign Function Interface
Hierarchical Namespace Extension
5.
Language extensions supported by Hugs and GHC
Syntactic extensions
Recursive do-notation
Parallel list comprehensions (a.k.a. zip-comprehensions)
Type class extensions
More flexible contexts
More flexible instance declarations
Overlapping instances
Multiple parameter type classes
Functional dependencies
Quantified types
Rank 2 types
Polymorphic components
Existential quantification
Type annotations in patterns
Implicit parameters
Implicit-parameter type constraints
Implicit-parameter bindings
6.
Hugs-specific language extensions
Typed extensible records
Restricted type synonyms
Here documents
Hugs debugging primitives
Using HugsHood
Differences from Hood
Reporting HugsHood bugs
7.
Miscellaneous
Hugs 98 release history
January 1999 (Beta release)
May 1999
November 1999
February 2001
December 2001
November 2002
November 2003
Next
The Hugs 98 License