Commit e7d21ee4 authored by partain's avatar partain

[project @ 1996-01-08 20:28:12 by partain]

Initial revision
parent e48474bf

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

The Glasgow Haskell Compiler -- version 0.26
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
We are proud to announce a new public release of the Glasgow Haskell
Compiler (GHC, version 0.26). Sources and binaries are freely
available by anonymous FTP and on the World-Wide Web; details below.
Haskell is "the" standard lazy functional programming language [see
SIGPLAN Notices, May 1992]. The current language version is 1.2. GHC
provides some proposed features of 1.3, notably monadic I/O.
The Glasgow Haskell project seeks to bring the power and elegance of
functional programming to bear on real-world problems. To that end,
GHC lets you call C (including cross-system garbage collection),
provides good profiling tools, supports ever richer I/O, and (with
this release) adds concurrency. Our goal is to make it the "tool of
choice for real-world applications".
Highlights of what's new in GHC 0.26 since 0.24 (March 1995):
* Concurrent Haskell: with this, you can build programs out of many
I/O-performing, interacting `threads'. We have a draft paper
about Concurrent Haskell, and our forthcoming Haggis GUI toolkit
uses it.
* Parallel Haskell, running on top of PVM (Parallel Virtual Machine)
and hence portable to pretty much any parallel architecture,
whether shared memory or distributed memory. With this, your
Haskell program runs on multiple processors, guided by `par` and
`seq` annotations. The first pretty-much-everyone-can-try-it
parallel functional programming system! NB: The parallel stuff is
"research-tool quality"... consider this an alpha release.
* "Foldr/build" deforestation (by Andy Gill) is in, as are
"SPECIALIZE instance" pragmas (by Patrick Sansom).
* The LibPosix library provides an even richer I/O interface than
the standard 1.3 I/O library. A program like a shell or an FTP
client can be written in Haskell -- examples included.
* Yet more cool libraries: Readline (GNU command-line editing),
Socket (BSD sockets), Regex and MatchPS (GNU regular expressions).
By Darren Moffat and Sigbjorn Finne.
* New ports -- Linux (a.out) and MIPS (Silicon Graphics).
* NB: configuration has changed yet again -- for the better, of
course :-)
Please see the release notes for a complete discussion of What's New.
To run this release, you need a machine with 16+MB memory, GNU C
(`gcc'), and `perl'. We have seen GHC 0.26 work on these platforms:
alpha-dec-osf2, hppa1.1-hp-hpux9, i386-unknown-linuxaout,
m68k-sun-sunos4, mips-sgi-irix5, and sparc-sun-{sunos4,solaris2}.
Similar platforms should work with minimal hacking effort.
The installer's guide give a full what-ports-work report.
Binaries are now distributed in `bundles', e.g. a "profiling bundle"
or a "concurrency bundle" for your platform. Just grab the ones you
need.
Once you have the distribution, please follow the pointers in
ghc/README to find all of the documentation about this release. NB:
preserve modification times when un-tarring the files (no `m' option
for tar, please)!
We run mailing lists for GHC users and bug reports; to subscribe, send
mail to glasgow-haskell-{users,bugs}-request@dcs.glasgow.ac.uk.
Please send bug reports to glasgow-haskell-bugs.
Particular thanks to: Jim Mattson (author of much of the code) who has
now moved to HP in California; and the Turing Institute who donated a
lot of SGI cycles for the SGI port.
Simon Peyton Jones and Will Partain
Dated: 95/07/24
Relevant URLs on the World-Wide Web:
GHC home page http://www.dcs.glasgow.ac.uk/fp/software/ghc.html
Glasgow FP group page http://www.dcs.glasgow.ac.uk/fp/
comp.lang.functional FAQ http://www.cs.nott.ac.uk/Department/Staff/mpj/faq.html
======================================================================
How to get GHC 0.26:
This release is available by anonymous FTP from the main Haskell
archive sites, in the directory pub/haskell/glasgow:
ftp.dcs.glasgow.ac.uk (130.209.240.50)
ftp.cs.chalmers.se (129.16.227.140)
haskell.cs.yale.edu (128.36.11.43)
The Glasgow site is mirrored by src.doc.ic.ac.uk (146.169.43.1), in
computing/programming/languages/haskell/glasgow.
These are the available files (.gz files are gzipped) -- some are `on
demand', ask if you don't see them:
ghc-0.26-src.tar.gz The source distribution; about 3MB.
ghc-0.26.ANNOUNCE This file.
ghc-0.26.{README,RELEASE-NOTES} From the distribution; for those who
want to peek before FTPing...
ghc-0.26-ps-docs.tar.gz Main GHC documents in PostScript format; in
case your TeX setup doesn't agree with our
DVI files...
ghc-0.26-<platform>.tar.gz Basic binary distribution for a particular
<platform>. Unpack and go: you can compile
and run Haskell programs with nothing but one
of these files. NB: does *not* include
profiling (see below).
<platform> ==> alpha-dec-osf2
hppa1.1-hp-hpux9
i386-unknown-linuxaout
i386-unknown-solaris2
m68k-sun-sunos4
mips-sgi-irix5
sparc-sun-sunos4
sparc-sun-solaris2
ghc-0.26-<bundle>-<platform>.tar.gz
<platform> ==> as above
<bundle> ==> prof (profiling)
conc (concurrent Haskell)
par (parallel)
gran (GranSim parallel simulator)
ticky (`ticky-ticky' counts -- for implementors)
prof-conc (profiling for "conc[urrent]")
prof-ticky (ticky for "conc[urrent]")
ghc-0.26-hc-files.tar.gz Basic set of intermediate C (.hc) files for the
compiler proper, the prelude, and `Hello,
world'. Used for bootstrapping the system.
About 4MB.
ghc-0.26-<bundle>-hc-files.tar.gz Further sets of .hc files, for
building other "bundles", e.g., profiling.
ghc-0.26-hi-files-<blah>.tar.gz Sometimes it's more convenient to
use a different set of interface files than
the ones in *-src.tar.gz. (The installation
guide will advise you of this.)
We could provide diffs from previous versions of GHC, should you
require them. A full set would be very large (7MB).
# partain: probably not the right thing yet
all: configure
configure: configure.in
rm -f configure.new
autoconf configure.in > configure.new \
|| ( rm -f configure.new; exit 1 )
rm -f configure
mv configure.new configure
chmod +x configure
chmod -w configure
rm -f configure.new
CONFIG_H_IN = ghc/includes/config.h.in
config.h.in: configure.in
rm -f $(CONFIG_H_IN)
autoheader configure.in > $(CONFIG_H_IN) \
|| ( rm -f $(CONFIG_H_IN); exit 1 )
# do something about autoheader
# do something about ghc-vs-nofib configure scripts
# @configure_input@
srcdir = @srcdir@
VPATH = @srcdir@
CC = @CC@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
LIBS = @LIBS@
CFLAGS = -O
LDFLAGS = -O
prefix = /usr/local
exec_prefix = $(prefix)
binprefix =
manprefix =
bindir = $(exec_prefix)/bin
libdir = $(exec_prefix)/lib
mandir = $(prefix)/man/man1
manext = 1
SHELL = /bin/sh
Makefile: Makefile.in config.status
$(SHELL) config.status
config.status: configure
$(SHELL) config.status --recheck
configure: configure.in
cd $(srcdir); autoconf < configure.in > configure.new
grep -v '# Generated automatically from' < configure.new > configure
This is the root directory for functional-programming tools
distributed by the Computing Science Department at Glasgow University.
Simon Peyton Jones <simonpj@dcs.glasgow.ac.uk> is the ringleader
of this effort. The tools are:
ghc the Glasgow Haskell compilation system
haggis the Haggis GUI toolkit
happy the Happy Haskell parser generator
nofib the NoFib Haskell benchmarking suite
literate the Glasgow "literate programming" system
mkworld configuration system (derived from X11 imake)
glafp-utils shared utility programs
The "literate" stuff is usually distributed *with* other systems, but
not necessarily. Components which are always part of a distribution
(never stand-alone) are "glafp-utils" and "mkworld" (a configuration
system).
There is usually an ANNOUNCE* file with any distribution. Please
consult that, or the <piece>/README file, to find out how to proceed.
#! /bin/sh
#
# die quickly if anything goes astray...
set -e
# figure out the absolute pathname of the "top" directory
# (the one which has "mkworld", "nofib", "glafp-utils", etc., as subdirs)
hardtop=`pwd`
hardtop