summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--distrib/ANNOUNCE178
-rw-r--r--distrib/README21
-rw-r--r--distrib/RELEASE1
3 files changed, 200 insertions, 0 deletions
diff --git a/distrib/ANNOUNCE b/distrib/ANNOUNCE
new file mode 100644
index 0000000000..1938eae8d1
--- /dev/null
+++ b/distrib/ANNOUNCE
@@ -0,0 +1,178 @@
+ The Glasgow Haskell Compiler -- version 2.02
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+We are pleased to announce the first release of the Glasgow Haskell
+Compiler (GHC, version 2.02) for *Haskell 1.4*. 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; the
+current language version is 1.3, agreed in May, 1996. The Haskell
+Report is online at
+
+ http://haskell.cs.yale.edu/1.4/haskell-report.html
+
+GHC 2.02 is a beta-quality release:
+
+ * It is reliable.
+ It has been extensively tested against a large suite of Haskell 1.2
+ programs, but not so extensively tested against Haskell 1.4 programs
+ because we don't have a comprehensive set (Donations of Haskell 1.4
+ programs to our test suite are most welcome).
+
+ * It should generate good code.
+ All the optimisations that GHC 0.29 used to do are back in, with
+ the exception of specialisation. It ought to be the case that
+ GHC 2.02 outperforms GHC 0.29, because it has a much better
+ handle on cross-module inlining, but there's a good chance that
+ there are performance "holes" lurking. We have yet to make
+ a systematic comparison. (Please send us programs where 2.02
+ does noticeably worse than 0.29.)
+
+ * It is more expensive than it should be.
+ GHC 2.02 has received even less attention to its own performance.
+ At present it eats more space and time than GHC 0.29, especially
+ for very small programs. We'll work on this.
+
+ * A couple of Haskell 1.4 features are incompletely supported,
+ notably polymorphic strictness annotations, and Unicode.
+
+If you want to use Haskell 1.4, this is a good moment to switch. If
+you don't need the Haskell 1.4 extensions, then stay with GHC 0.29.
+If you want to hack on GHC itself, then 2.02 is definitely for you.
+The release notes comment further on this point.
+
+GHC 2.02 is substantially changed from 2.01. Changes worth noting
+include:
+
+ * The whole front end, which deals with the module system, has
+ been rewritten. The interface file format has changed.
+
+ * GHC 2.02 comes complete with Green Card, a C foreign language
+ interface for GHC. Green card is a pre-processor that
+ scans Haskell source files for Green Card directives, which
+ it expands into tons of "ccall" boilerplate that marshalls
+ your arguments to and from C.
+
+ * GHC 2.02 is available for Windows NT. From now on, Windows NT
+ will be a fully supported platform for GHC.
+
+ * GHC 2.02 supports full cross moudule inlining. Unlike 0.29 and
+ its predecessors, inlining can happen even if the inlined body
+ mentions a function or type that is not itself exported. This is
+ one place Haskell 1.4's new module system really pays off.
+
+ * Like 2.01, GHC 2.02 aborts a compilation if it decides that
+ nothing that the module imports *and acually uses* has changed.
+ This decision is now taken by the compiler itself, rather than
+ by a Perl script (as in 2.01) which sometimes got it wrong.
+
+ * The ghc/lib libraries are much more systematically organised.
+
+ * There's a completely new "make" system. This will mainly affect people
+ who want the source distribution, who will hopefully find it much, much,
+ easier than grappling with the old Jmakefiles. Even for binary
+ installation, the procedure is a little simpler, though.
+
+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 (more if
+building from sources), GNU C (`gcc'), and `perl'. We have seen GHC
+2.01 work on these platforms: alpha-dec-osf2, hppa1.1-hp-hpux9,
+sparc-sun-{sunos4,solaris2}, mips-sgi-irix5, and
+i386-unknown-{linux,solaris2,freebsd}. Similar platforms should work
+with minimal hacking effort. The installer's guide give a full
+what-ports-work report.
+
+Binaries are 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 majordomo@dcs.gla.ac.uk; the msg body should be:
+
+ subscribe glasgow-haskell-<which> Your Name <your-email@where.you.are>
+
+Please send bug reports about GHC to glasgow-haskell-bugs@dcs.gla.ac.uk.
+
+Simon Peyton Jones
+
+Dated: March 1997
+
+Relevant URLs on the World-Wide Web:
+
+GHC home page http://www.dcs.gla.ac.uk/fp/software/ghc/
+Glasgow FP group page http://www.dcs.gla.ac.uk/fp/
+comp.lang.functional FAQ http://www.cs.nott.ac.uk/Department/Staff/mpj/faq.html
+
+======================================================================
+How to get GHC 2.02:
+
+This release is available by anonymous FTP from the main Haskell
+archive sites, in the directory pub/haskell/glasgow:
+
+ ftp.dcs.gla.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-2.02-src.tar.gz The source distribution; about 3MB.
+
+ghc-2.02.ANNOUNCE This file.
+
+ghc-2.02.{README,RELEASE-NOTES} From the distribution; for those who
+ want to peek before FTPing...
+
+ghc-2.02-ps-docs.tar.gz Main GHC documents in PostScript format; in
+ case your TeX setup doesn't agree with our
+ DVI files...
+
+ghc-2.02-<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-freebsd
+ i386-unknown-linux
+ i386-unknown-solaris2
+ i386-unknown-cygwin32
+ m68k-sun-sunos4
+ mips-sgi-irix5
+ sparc-sun-sunos4
+ sparc-sun-solaris2
+
+ghc-2.02-<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-2.02-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-2.02-<bundle>-hc-files.tar.gz Further sets of .hc files, for
+ building other "bundles", e.g., profiling.
+
+ghc-2.02-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.)
diff --git a/distrib/README b/distrib/README
new file mode 100644
index 0000000000..f509e56816
--- /dev/null
+++ b/distrib/README
@@ -0,0 +1,21 @@
+This is the root directory for functional-programming tools
+distributed by the Computing Science Department at Glasgow University.
+Simon Peyton Jones <simonpj@dcs.gla.ac.uk> is the ringleader of this
+effort. The tools are:
+
+ ghc the Glasgow Haskell compilation system
+ hslibs collection of Haskell libraries
+ 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.
diff --git a/distrib/RELEASE b/distrib/RELEASE
new file mode 100644
index 0000000000..4653a81b6d
--- /dev/null
+++ b/distrib/RELEASE
@@ -0,0 +1 @@
+ToDo