![]() | ![]() |
Downloading Hugs |
Last updated: December 6th, 1999: This page provides access to the third official release of Hugs 98, which is an interpreter for the non-strict, purely functional language Haskell.
Major versions of Hugs 98 are identified by the month in which they are released. The version of Hugs provided here is the November 1999 release. If you want to report a bug, or ask a more general question about Hugs, then please be sure to mention this version date, as well as any platform and problem specific details.
Download the Hugs 98 distribution |
The core of the Hugs 98 release, which includes essential source code, libraries, and demos, is available in two formats:
A zip file, Hugs98-Nov1999.zip (via http), Hugs98-Nov1999.zip (via ftp).
A gzipped tar file, Hugs98-Nov1999.tar.gz (via http), Hugs98-Nov1999.tar.gz (via ftp).
Various bits of documentation are provided:
The Hugs user manual, updated for Hugs 98, and including descriptions of Hugs extensions. Available in several formats: PDF---high quality and hyperlinks make this the preferred format on any platform with Acrobat Reader; gzipped Postscript; gzipped tar-ed html; dvi; and WinHelp.
The Hugs/GHC libraries specification from January 1999. Available in gzipped Postscript; and gzipped, tar-ed HTML.
Documentation for Haskell 98, including the language and library reports, is no longer packaged up as part of the Hugs distribtion, but is readily available from http://haskell.org.
We are currently hosting a port of Paul Hudak's November 1998 release of the Haskore system for music authoring, with updates so that it can be used with Haskell 98. (You will need to download the file Haskore.zip). Please check Paul's home page for later versions.
Other demos and libraries are available from http://haskell.org.
Platform specific items |
Some special items are available for the following platforms:
Special items for Win 32 platforms |
The items described in this section are for users of Win 32 platforms only. We assume that you have already unpacked the main Hugs distribution into an appropriate directory. You can choose whichever directory you like, but in the following description, we will assume c:\Hugs98. Please remember to remove the old version of Hugs before installing the new one.
Download and unpack precompiled versions of the executables from the file win32exes.zip into c:\Hugs98.
NEW - OR download and use then InstallShield version of Hugs98.
If you plan to use Winhugs, make sure that you have downloaded the Hugs documentation in WinHelp format, and place that in c:\Hugs98. Additionally, you should check that you have the right version of ctl3d32.dll for your machine. Visit http://www.ticnet.com/chuckw/ctl3d.htm for further details; note that Winhugs will not work properly if you have either the wrong version of ctl3d32.dll, or a version that was designed for a different O/S. Please note that use of Winhugs is not compatible with other Win32 extensions and that it carries some severe performance penalties. It is useful for browsing, but is not recommended for serious work.
This distribution of Hugs98 does not include the configure file. To generate one, run autoconf. On cygwin, you might want to try this copy of configure.
You may want to add a short cut to Hugs from your startup menu.
You may want to set up file associations for .hs and .lhs files so that you can start up the interpreter by clicking on a file. I suggest the following:
Action Application used to perform action: Hugs (Haskell 98 mode) c:\Hugs98\hugs.exe +98 "%1" Hugs (Hugs mode) c:\Hugs98\hugs.exe -98 "%1" Run (Haskell 98 mode) c:\Hugs98\runhugs.exe +98 "%1" Run (Hugs mode) c:\Hugs98\runhugs.exe -98 "%1"
Only for the truly bold, use at your own risk: Here's a file called Hugs98.reg that I use to set up the above file associations on a Windows NT machine. The configuration that I used is somewhat non-standard because I have a top-level Hugs98 directory on my D: drive, where other people might perhaps use the C: drive, or a subdirectory of c:\Program Files. So, make sure that you edit it first to suit your own configuration, and only double click on it if you are really really sure about what you are doing!
If you want to use a Win32 program like Fran, or you want to do some Win32 programming of your own, then you will need to download and unpack the Win32 library so that you have a Win32 subdirectory in c:\Hugs98\lib. Use :set -P;c:\Hugs98\lib\Win32" to ensure that the library is included on your search path. (The InstallShield version will probably install the library on your project path instead; the overall effect is the same.)
If you want to install Fran, then you will need to download and unpack the Fran library so that you have a Fran subdirectory in c:\Hugs98\lib. Use :set -P;c:\Hugs98\lib\Fran" to ensure that the library is included on your search path. (The InstallShield version will probably install the library on your project path instead; the overall effect is the same.). You will also need to copy the file SpriteLib.dll from c:\Hugs98\lib\Fran into c:\Hugs98 so that it is in the same directory as the Hugs executables.
Please note that this is Conal Elliot's 1.12 release of Fran, updated to work with Hugs 98. Please check Conal's own Fran page at http://www.research.microsoft.com/~conal/fran/default.htm for later versions.
If you want to install the Graphics library, then you will need to download and unpack the GraphicsLib.zip file in a new directory. Copy the top-level file Graphics.hs and the whole of the Graphics subdirectory (which contains another file, also called Graphics.hs) into c:\Hugs98\lib\hugs. This directory is normally included by default on the search path for Win 32 builds of Hugs; you can check this using the :set command to look at the setting for -P. The Graphics library is not included as part of the standard Hugs install because it is not regarded as stable at this time. It is provided here only for the benefit of anyone with programs developed using previous releases of Hugs that depend on this particular library.
Special items for Macintosh platforms |
NEW : Hugs 98 can be compiled and used on Apple Macintosh (PPC) computers thanks to the efforts of Hans Aberg and Pablo Azero. Unfortunately, it has not been possible to integrate all of the necessary changes with the main release, but a bundle containing the necessary source files is available here: Hugs98Src-990620-MacPPC.sea.bin. Precompiled binaries are also available here in the self-extracting archive Hugs98Bin-990620-MacPPC.sea.bin.
Special items for Linux platforms |
Source and binary packages for Debian are available in the Debian potato distribution - if you're using Debian potato, "apt-get update && apt-get install hugs hugs-doc" is all you need to do. Additionally, the source package should compile cleanly on Debian slink systems. If you have problems with Hugs on Debian systems, please contact hugs@packages.debian.org.".
Reporting Bugs |
To report a (possible :-) bug in this or any other version of Hugs, please send a message to hugs-bugs@haskell.org. To to ask a question about using Hugs, please send a message to hugs-users@haskell.org. To ask a question about Haskell, please check the Haskell web site at http://haskell.org for further details, or send your message to haskell@haskell.org. Please do not send direct mail to the authors or maintainers of Hugs if one of the above addresses would be more appropriate. We do read these mailing lists --- but so do many others people, who might be able to give you more appropriate or timely advice than us!
The Hugs 98 system is Copyright © Mark P Jones, Alastair Reid, the Yale Haskell Group, and the Oregon Graduate Institute of Science and Technology, 1994-1999, All rights reserved. It is distributed as free software under the license in the file "License", which is included in the distribution.
Last Updated: Dec 2nd, 1999 | • Rendered using Haskell HTML Combinators • | Copyright ©1999 OGI and Yale |