|Version 18 (modified by ross, 6 years ago)|
Hugs 98 developer wiki
This wiki is aimed at those developing Hugs.
The bug tracker
Before submitting a bug report, please check the known bug list and current bug reports.
If you don't have an account, to submit a report you'll need to login as guest, password guest. (Sorry about that, but we've been getting ticket spam.) If you use the guest login, it would be helpful if you could sign your report in case we need more details.
- new version of WinHugs
- The implementation of the Gofer functional programming system, by Mark P. Jones. Discussion of the internals of Gofer, the predecessor of Hugs.
Getting the code
There are a few possibilities, in order of increasing currency, dependencies and risk.
If you only want to use Hugs, not modify it, your best bet is to download a recent major release.
We occasionally make available snapshot source distributions (which include the libraries). These require fewer tools to build than the development version, and have had some testing, but may not be as stable as major releases.
To build the development version, you'll need gcc, bison, cvs, happy, darcs, various Unix tools and an Internet connection. The Hugs code is currently in CVS, though the libraries and some other tools are in darcs. If you don't already have access to the Haskell CVS repository, you can get read-only access as follows:
- Make sure that cvs is installed on your machine.
- Set your $CVSROOT environment variable to
:pserver:firstname.lastname@example.org:/cvsIf you set $CVSROOT in a shell script, be sure not to have any trailing spaces on that line, otherwise CVS will respond with a perplexing message like
/cvs : no such repository
- Run the command
$ cvs loginThe password is simply cvs. This sets up a file in your home directory called .cvspass, which squirrels away the dummy password, so you only need to do this step once.
Once you've set this up (you only have to do it once), the steps to build from CVS are:
- Check out hugs98.
- Move to hugs98 and say
makeThis includes fetching the libraries from darcs, so you need to be connected.
- You can now run Hugs in place with
HUGSDIR=hugsdir src/hugsTo run the test suite, say
make checkTo check the libraries, move into libraries and say
- When you're confident with it, you can go back to the hugs98 directory and say
Please report any bugs in the CVS version to the cvs-hugs mailing list, which also carries commit messages and development discussion. You can also examine the history of the source using a web interface.