removed a few //-style comments that made no sense anyway :)
Drawbacks: Hugs is currently not configured to use an editor (:e will
not work). I can change that in the future if anyone is interested. Hugs also
has no "make install" and currently runs only from the directory it was
compiled in. To change this behaviour you can start hugs with -P/something/lib
where 'something' is where you put the standard prelude libraries. This could
also be changed if enough people are interested.
Oh, I just realized that the version string is not printed on startup..
Well, it's November 2002 for those who care :)
Download: here
Compile: Should be as simple as:
% gunzip < hugs-p9.tgz | tar xv # no lnfs required -- it's safe there
% cd hugs-p9/src
% ape/psh
$ make
Example:
cpu% cd hugs-p9
cpu% cd src
cpu% ape/psh
$ make
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" hugs.c
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" storage.c
cpp: storage.c:2757 Unknown preprocessor control warning
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" input.c
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" static.c
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" type.c
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" subst.c
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" compiler.c
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" plugin.c
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" builtin.c
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" machine.c
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" output.c
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" ffi.c
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" version.c
cc -o hugs hugs.o storage.o input.o static.o type.o subst.o compiler.o plugin.o builtin.o machine.o output.o ffi.o version.o
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" runhugs.c
cc -c -g -O -DHUGSDIR=\"/usr/andrey/lib/hugs\" server.c
cc -o runhugs runhugs.o server.o storage.o input.o static.o type.o subst.o compiler.o plugin.o builtin.o machine.o output.o ffi.o version.o
$ make install
test -d /usr/andrey/lib/hugs || mkdir /usr/andrey/lib/hugs
test -d /usr/andrey/lib/hugs/lib || mkdir /usr/andrey/lib/hugs/lib
test -d /usr/andrey/lib/hugs/demos || mkdir /usr/andrey/lib/hugs/demos
test -d /usr/andrey/lib/hugs/demos/prolog || mkdir /usr/andrey/lib/hugs/demos/prolog
test -d /usr/andrey/lib/hugs/lib/hugs || mkdir /usr/andrey/lib/hugs/lib/hugs
test -d /usr/andrey/lib/hugs/lib/exts || mkdir /usr/andrey/lib/hugs/lib/exts
cp ../lib/[A-Z]* /usr/andrey/lib/hugs/lib
cp ../lib/hugs/* /usr/andrey/lib/hugs/lib/hugs/
cp ../lib/exts/* /usr/andrey/lib/hugs/lib/exts/
cp ../demos/prolog/* /usr/andrey/lib/hugs/demos/prolog/
cp ../demos/[A-Z]* /usr/andrey/lib/hugs/demos/
cp hugs /usr/andrey/bin/386/
cp runhugs /usr/andrey/bin/386/
$
__ __ __ __ ____ ___ _________________________________________
|| || || || || || ||__ Hugs 98: Based on the Haskell 98 standard
||___|| ||__|| ||__|| __|| Copyright (c) 1994-2002
||---|| ___|| World Wide Web: http://haskell.org/hugs
|| || Report bugs to: hugs-bugs@haskell.org
|| || Version: _________________________________________
Haskell 98 mode: Restart with command line option -98 to enable extensions
Reading file "../lib/Prelude.hs":
Hugs session for:
../lib/Prelude.hs
Type :? for help
Prelude> [1..10]
[1,2,3,4,5,6,7,8,9,10]
Prelude> map (*3) [1..10]
[3,6,9,12,15,18,21,24,27,30]
Prelude> foldr1 (*) [1..100]
93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000
Prelude> [Leaving Hugs]
$
Last Modified: Apr 21 2003
mirtchovski at gmail