|
Warning: this is a htmlized version!
The original is across this link. |
#######
#
# E-scripts on functional languages.
#
# Note 1: use the eev command (defined in eev.el) and the
# ee alias (in my .zshrc) to execute parts of this file.
# Executing this file as a whole makes no sense.
#
# Note 2: be VERY careful and make sure you understand what
# you're doing.
#
# Note 3: If you use a shell other than zsh things like |&
# and the for loops may not work.
#
# Note 4: I always run as root.
#
# Note 5: some parts are too old and don't work anymore. Some
# never worked.
#
# Note 6: the definitions for the find-xxxfile commands are on my
# .emacs.
#
# Note 7: if you see a strange command check my .zshrc -- it may
# be defined there as a function or an alias.
#
# Note 8: the sections without dates are always older than the
# sections with dates.
#
# This file is at <http://angg.twu.net/a/e/fl.e>
# or at <http://angg.twu.net/e/fl.e.html>.
# See also <http://angg.twu.net/emacs.html>,
# <http://angg.twu.net/a/.emacs[.html]>,
# <http://angg.twu.net/a/.zshrc[.html]>,
# <http://angg.twu.net/escripts.html>,
# and <http://angg.twu.net/>.
#
#######
#####
#
# potato hugs98 on slink
# 99nov27
#
#####
rm -Rv /usr/src/hugs98-98.199911/
pdsc $SDEBIAN/dists/potato/main/source/interpreters/hugs98_98.199911-1.dsc
cd /usr/src/hugs98-98.199911/
debian/rules binary |& tee odrb
mv -v /usr/src/hugs_98*.deb /usr/src/.debs/
apt-update
apti hugs
# (find-vldifile "hugs.list")
# (find-fline "/usr/doc/hugs/")
#####
#
# potato hugs-doc on slink
# 99nov27
#
#####
rm -Rv /usr/src/hugs-doc-98.199909/
pdsc $SDEBIAN/dists/potato/main/source/doc/hugs-doc_98.199909-1.dsc
cd /usr/src/hugs-doc-98.199909/
debian/rules binary |& tee odrb
mv -v /usr/src/hugs-doc*.deb /usr/src/.debs/
apt-update
apti hugs-doc-98.199909
# (find-vldifile "hugs-doc.list")
# (find-fline "/usr/doc/hugs-doc/")
####
#
# Haskore
# 99nov27 / 00feb01
#
####
rm -Rv /usr/src/haskore/
mkdir /usr/src/haskore/
cd /usr/src/haskore/
unzip $S/http/www.haskell.org/haskore/Haskore.zip
cd /usr/src/haskore/Src/
hugs +98 HaskoreExamples.lhs
# The fix below does not work.
# (find-fline "$MAIL" "Haskore on a SuSe 6.3")
cat >> Basics.lhs <<'---'
\begin{verbatim}
> instance Show (a -> b) where
> showsPrec _ _ = showString " << Function >> "
\end{verbatim}
---
# (find-fline "/usr/src/haskore/Src/Basics.lhs")
# (find-fline "/usr/src/haskore/Src/Basics.lhs" 172)
hugs /usr/src/hugs/lib/Haskore/demos/HaskoreExamples.lhs
hugs /usr/src/hugs/lib/Haskore/src/TestHaskore.lhs
hugs /usr/src/hugs/lib/Haskore/demos/ChildSong6.lhs
hugs /usr/src/hugs/lib/Haskore/demos/ChildSong6.lhs <<'---'
testLinux childSong6
:q
---
############
#
# Hugs June98 (1.4+)
#
############
cd /usr/src/
rm -Rv hugs*
tar -xvzf /snarf/ftp/haskell.org/pub/haskell/hugs/June98/hugs-June98-source.tgz
cd /usr/src/hugs/
mkdir tmp
cd /usr/src/hugs/src/unix
# ./configure --prefix=/usr/src/hugs/tmp |& tee /usr/src/hugs/oc
./configure --prefix=/usr |& tee /usr/src/hugs/oc
cd ..
make install |& tee /usr/src/hugs/omi
#
# cgi demos:
#
rm -Rv /var/www/hugs
mkdir /var/www/hugs
cd /usr/src/hugs/demos/cgi/
cp -iv * /var/www/hugs
# (find-node "(gawk)One-liners")
# (find-node "(gawk)String Functions" "gsub")
for i in *.cgi; do
cat $i \
| awk 'NR == 1 { print "#! /usr/bin/runhugs +l" }
NR > 1 { gsub(/\/homes\/systems\/hcompile\/cgi-bin\//,
"/var/www/hugs/");
print }' \
> /var/www/hugs/$i
done
for i in *.hs; do
cat $i \
| awk '{ gsub(/\/homes\/systems\/hcompile\/cgi-bin\//, "/var/www/hugs/");
gsub(/http:\/\/www.haskell.org\/cgi-bin\/counter.cgi/,
"counter.cgi");
print }' \
> /var/www/hugs/$i
done
chmod 755 /var/www/hugs/*.cgi
chown edrx:edrx /var/www/hugs/*.cgi
#
# etc:
#
cd /var/www/hugs/
lynx http://127.0.0.1/hugs/
edrxnetscape http://127.0.0.1/hugs/
mycat /var/www/hugs/*.cgi
# (find-hugsfile "src/unix/README")
# (find-hugsfile "src/unix/INSTALL" "Optional Features")
# (find-hugsfile "src/unix/configure.in")
############
#
# Hugs June98 (1.4+) - trying to debianize
#
############
cd /usr/src/
rm -Rv hugs*
tar -xvzf /snarf/ftp/haskell.org/pub/haskell/hugs/June98/hugs-June98-source.tgz
mv hugs hugs-1.4
cd /usr/src/hugs-1.4/
dh_make
mkdir tmp
cd /usr/src/hugs/src/unix
./configure --prefix=/usr/src/hugs/tmp |& tee /usr/src/hugs/oc
cd ..
make install |& tee /usr/src/hugs/omi
############
#
# Hugs 1.4
#
############
cd /usr/src/
rm -Rv hugs/
tar -xvzf /snarf/ftp/haskell.org/pub/haskell/hugs/BETA/hugs.tar.gz
#
cd /usr/src/hugs/docs/
ln -s haskell-report-1.4-html report
tar -xvzf /snarf/ftp/haskell.org/pub/report/haskell-report-1.4-sources.tar.gz
ln -s haskell-report-1.4-sources hrsrc
#
cd /usr/src/hugs/src/unix
# cp -iv /home/root/config.cache .
#
# Take care with old config.cache's... I was keeping one that said I
# didn't have X, and so I wasn't getting the Xlib plugin to compile...
#
# (find-hugsfile "src/unix/configure.in" 365)
echo -n > MkXlib
./configure --prefix=/usr \
--with-foobar \
--with-plugins --with-readline \
--enable-TREX --enable-internal-prims |& tee oc
cd ..
#
# (find-hugsfile "src/builtin.c" 1069)
ln -s interns.c internals.c
#
make |& tee om
make install |& tee omi
#############
#
# ghc-2.10
#
############
rm -Rv /usr/local/lib/ghc-2.10/
rm -Rv /usr/local/lib/lmlc/
cd /usr/src/
rm -Rv fptools
tar -xvzf /snarf/ftp/www.dcs.gla.ac.uk/pub/haskell/glasgow/2.10/ghc-2.10-i386-unknown-linux.tar.gz
cd /usr/src/fptools/info/ghc-2.10/
cp * /usr/info/
cd /usr/src/fptools/
# Installing
#
# make in-place |& tee omip
# export PATH=$PATH:/usr/src/fptools/bin/i386-unknown-linux/ghc-2.10
# or:
./configure |& tee oc
make install |& tee omi
# HBC:
#
rm -Rv /usr/src/fptools/hbc/
mkdir /usr/src/fptools/hbc/
cd /usr/src/fptools/hbc/
tar -xvzf /snarf/ftp/ftp.cs.chalmers.se/pub/haskell/chalmers/hbc-0.9999.4.bin-i386-linuxELF.tar.gz
cd /usr/src/fptools/hbc/
#
# (find-fpfile "hbc/README")
# (find-fpfile "hbc/Makefile")
#
make BIN=i386-linuxELF install |& tee omi
# Fudgets:
#
cd /usr/src/fptools/
rm -Rv Fudgets
tar -xvzf /snarf/ftp/ftp.cs.chalmers.se/pub/haskell/chalmers/fudgets-h12.src.tar.gz
#
# (find-fudgfile "hsrc/hmklib" 10)
# (find-fudgfile "hsrc/mycpp.Linux" 4)
# HBC=hbcmakehbc -> HBC=/usr/src/fptools/Fudgets/bin/hbcmakehbc
# cpp -> gcc -E
#
# (find-fudgfile "/usr/local/bin/hbcmake")
# (find-fudgfile "/usr/local/bin/hbcmake" "$LMLMK $rtflags")
#
cd /usr/src/fptools/Fudgets/
make install |& tee omi
l /usr/src/fptools/Fudgets/omi
l /usr/src/fptools/{oc,omi,hbc/omi,Fudgets/omi}
# (find-fudgfile "omi")
# (find-fudgfile "hsrc/Makefile" "objects:")
# (find-fudgfile "hsrc/hmklib")
# (find-fudgfile "/usr/local/bin/hbcmake")
# (find-fudgfile "hsrc/Makefile")
# (find-fudgfile "hsrc/internals/Tree234.hs")
# (find-fudgfile "hsrc/Makefile" "$(FLIB):")
# (find-fudgfile "hsrc/mklibs")
# (find-fudgfile "hsrc/mkar.Linux")
# (find-fudgfile "hsrc/Makefile" "all:")
# (find-fudgfile "Makefile" "fudgets:")
# (find-fudgfile "bin/hbcmakehbc")
# (find-fudgfile "README")
# (find-fudgfile "HowToCompile" "bin/ghcmake")
# (find-fudgfile "HowToCompile" "just do")
# (find-fudgfile "bin/ghcmake")
# (find-fudgfile "bin/ghcxmake")
# (find-fudgfile "bin/ghcgrep")
# setenv GHCROOT /usr/src/fptools/lib/i386-unknown-linux/ghc-2.10
#
# Happy binaries:
#
cd /usr/src/
tar -xvzf /snarf/ftp/ftp.dcs.gla.ac.uk/pub/haskell/happy/happy-1.5-i386-unknown-linux.tar.gz
cd /usr/src/fptools/
./configure |& tee och
make install |& tee omih
# We need this to recompile sources.
#
cd /usr/src/fptools/mk/
cp config.mk.in config.mk
# Ghc, from the sources:
#
cd /usr/src/
tar -xvzf /snarf/ftp/ftp.dcs.gla.ac.uk/pub/haskell/glasgow/3.01/ghc-3.01-src.tar.gz
cd /usr/src/fptools/
./configure |& tee ocgs
make boot |& tee ombgs
make |& tee omgs
# Happy, from the sources:
#
cd /usr/src/
tar -xvzf /snarf/ftp/ftp.dcs.gla.ac.uk/pub/haskell/happy/happy-1.5-src.tar.gz
cd /usr/src/fptools/
./configure |& tee ochs
cd /usr/src/fptools/happy/src/
make |& tee om
make install |& tee omih
tar -tvzf /snarf/ftp/ftp.dcs.gla.ac.uk/pub/haskell/happy/happy-1.5-src.tar.gz
cd /usr/src/fptools/
# Testing ghc
#
cd ~/HUGS/
cat > hello.hs <<'EOF'
main = putStr "Hello, fpworld!\n"
EOF
ghc -v -o hello hello.hs |& tee og
./hello
# (find-node "(installing)Top")
# (find-node "(installing)installing_4.1")
# (find-node "(installing)GHC_test")
# (find-node "(installing)installing_6.3" "gmake")
# (find-node "(libs)Top")
# (find-node "(user)Top")
tar -tvzf /snarf/ftp/ftp.dcs.gla.ac.uk/pub/haskell/happy/happy-1.5-src.tar.gz
tar -tvzf /snarf/ftp/ftp.dcs.gla.ac.uk/pub/haskell/happy/happy-1.5-i386-unknown-linux.tar.gz
#############
#
# Normaliser
#
#############
cd /usr/src/
rm -Rv Normaliser-2.2/
tar -xvzf /snarf/ftp/ftp.logique.jussieu.fr/pub/distrib/raffalli/Normaliser-2.2.tar.gz
cd /usr/src/Normaliser-2.2/Src/
make |& tee om
# Depends on ocaml
#############
#
# caml-light
#
#############
rpm -iv /snarf/ftp/ftp.inria.fr/lang/caml-light/caml-light-0.73-1.src.rpm
cd /usr/src/redhat/SPECS/
rpm -bb caml-light-0.73-1.spec |& tee orbb-caml
#############
#
# ocaml-1.05
#
#############
cd /usr/src/
rm -Rv ocaml-1.05/
tar -xvzf /snarf/ftp/ftp.inria.fr/lang/caml-light/ocaml-1.05.tar.gz
cd /usr/src/ocaml-1.05/
cp -iv /home/root/config.cache .
./configure |& tee oc
make world |& tee omw
# ocamlrun asks for ld-linux.so.2 ...
##############
#
# OSC (sisal)
#
##############
cd /usr/src/
rm -Rv OSC/
tar -xvzf /snarf/ftp/sisal.llnl.gov/pub/sisal/OSC-13.0.3.tar.gz
# O original é .Z
cd /usr/src/OSC/
echo '\n14\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n' | \
sinstall |& tee osi
make all |& tee oma
##########
#
# HOL doc
#
##########
rm -Rv /c5/usr/src/hol/
rm /usr/src/hol
ln -s /c5/usr/src/hol /usr/src/hol
cd /c5/usr/src/
tar -xvzf /snarf/ftp/lal.cs.byu.edu/pub/hol/holdoc.tar.gz
cd /usr/src/hol/
#########
#
# nhc 13
#
#########
cd /usr/src/
rm -Rv nhc13
tar -xvzf /snarf/ftp/ftp.chalmers.se/pub/haskell/nhc/nhc13.tar.gz
cd /usr/src/
rm -Rv nhcmake
tar -xvzf /snarf/ftp/ftp.chalmers.se/pub/haskell/nhc/nhcmake06.tar.Z
cd /usr/src/nhcmake/
cd /usr/src/nhc13/
###############
#
# hbc 0.9999.4
#
###############
cd /usr/src/
rm -Rv hbc
mkdir hbc
cd /usr/src/hbc/
tar -xvzf /snarf/ftp/ftp.cs.chalmers.se/pub/haskell/chalmers/hbc-0.9999.4.src.tar.gz
tar -xvzf /snarf/ftp/ftp.cs.chalmers.se/pub/haskell/chalmers/hbc-0.9999.4.bin-i386-linuxELF.tar.gz
cd /usr/src/hbc/
find -name '*.[ch]' > .files.ch
# (find-hbcfile "README" 40)
cd /usr/src/hbc/src/
rm config.status
#
./configure <<EOF
m_80386
linux
gcc
n
y
n
y
y
n
n
/usr/src/hbc/bin
/usr/src/hbc/lmlc
/usr/local/man/man1
EOF
#
make universe |& tee ../omu
# (find-hbcfile "src/bin/mycc")
for i in lmlc hbc lmlmake hbcmake hp2ps addsign hbcaddsign hbcgrep
do ln -v -s /usr/src/hbc/bin-i386-linuxELF/exe/$i /usr/bin/$i
done
for i in lmlc hbc lmlmake hbcmake hp2ps addsign hbcaddsign hbcgrep
do rm /usr/bin/$i
done
#############
#
# Otter
#
###########
cd /usr/src/
rm -Rv otter-3.0.4
tar -xvZf /snarf/ftp/info.mcs.anl.gov/pub/Otter/otter.tar.Z
cd /usr/src/otter-3.0.4/
cd /usr/src/otter-3.0.4/source/
make |& tee om
ln -s /usr/src/otter-3.0.4/source/otter /usr/bin/otter
cd /usr/src/otter-3.0.4/examples/
Run_all auto
Run_all fringe
Run_all kalman
Run_all misc
# two_inv takes a lot of time (8'30") to complete.
# Run_all program
Run_all wos
cd ~/OTTER/
otter < ~/OTTER/foo.in
# (find-fline "~/OTTER/foo.in")
#######
#
# Hugs: prettyprinting
#
#######
# (find-hugsfile "lib/hugs/Pretty.lhs")
# (find-hugsfile "demos/Literate.lhs")
# (find-hugsfile "demos/cgi/")
# (find-hugsfile "demos/cgi/Pretty.hs")
# (find-hugsfile "demos/cgi/PrettyHTML.hs")
# (find-fline "~/HUGS/mypretty.hs")
psne http://www.cs.chalmers.se/~rjmh/Papers/pretty.ps
gv /snarf/http/www.cs.chalmers.se/~rjmh/Papers/pretty.ps &
1 2 3
4 5
6 7 8
t :: Int -> Doc
t n = int (show n)
t 1 <+> t 2 <+> (t 3 $$ (t 4 <+> t 5)) where t = int
#######
#
# HaskellDB
#
#######
# (find-fline "/snarf/http/haskell.systemsz.cs.yale.edu/haskellDB/download/core.zip")
lynx /snarf/http/haskell.systemsz.cs.yale.edu/haskellDB/index.html
#######
#
# entre (interpreter)
#
#######
http://www.cit.gu.edu.au/~arock/entre/entre.html
http://www.cit.gu.edu.au/~arock/entre/
lynx /snarf/http/www.cit.gu.edu.au/~arock/entre/entre.html
ftp://haskell.org/pub/haskell/hugs/June98/index.html
ftp://haskell.org/pub/haskell/hugs/June98/hugs-June98-source.tgz
# (find-fline "$SDEBIAN/dists/slink/non-free/source/devel/hugs_1.4.199801-1.diff.gz")
#######
#
# Haskore
#
#######
# (find-fline "/usr/include/linux/soundcard.h")
# (find-fline "/usr/src/hugs/lib/Haskore/")
# (find-fline "/usr/include/midi.h")
find /usr/src/hugs/ | grep asko
# (find-fline "/usr/src/hugs/lib/Haskore/demos/")
# (find-fline "/usr/src/hugs/lib/Haskore/demos/ChildSong6.lhs")
# (find-fline "/usr/src/hugs/lib/Haskore/demos/HaskoreExamples.lhs")
hugs /usr/src/hugs/lib/Haskore/demos/HaskoreExamples.lhs
hugs /usr/src/hugs/lib/Haskore/src/TestHaskore.lhs
hugs /usr/src/hugs/lib/Haskore/demos/ChildSong6.lhs
hugs /usr/src/hugs/lib/Haskore/demos/ChildSong6.lhs <<'---'
testLinux childSong6
:q
---
# (find-fline "/usr/src/hugs/lib/Haskore/src/TestHaskore.lhs")
# (find-fline "/usr/src/hugs/lib/Haskore/demos/ChildSong6.lhs")
#####
#
# Haskore (slink)
# 99nov27
#
#####
# «haskore_slink»
# (find-vldifile "hugs.list")
# (find-fline "/usr/doc/hugs/")
# (find-vldifile "hugs.list" "/usr/share/hugs/lib/Haskore/")
# (find-fline "/usr/share/hugs/lib/hugs/Haskore.hs")
# (find-fline "/usr/share/hugs/lib/Haskore/")
# (find-fline "/usr/share/hugs/lib/Haskore/demos/")
# (find-fline "/usr/share/hugs/lib/Haskore/src/")
# (find-fline "~/s")
strace-to ~/s \
hugs /usr/share/hugs/lib/Haskore/demos/ChildSong6.lhs
#######
#
# Lixos?
#
#######
# (find-fline "/usr/src/hugs/lib/Prelude.hs" "instance Monad IO where")
lynx /usr/src/hugs/docs/report/io-13.html
hugs <<'---'
:type filter isAscii "foo"
:q
---
hugs <<'---'
:type filter isAscii "foo"
:type readFile "input-file"
:type writeFile "output-file" (filter isAscii "str")
:type readFile "a" >>= \s -> writeFile "b" s >> putStr "ok"
:q
---
readFile "a" >>= \s -> writeFile "b" s >> putStr "ok" :: IO ()
readFile "a" >>= \s -> writeFile "b" s :: IO ()
readFile "a" :: IO S
readFile :: S -> IO S
"a" :: S
========= ===
============= =
======== === = ===============
============ === ===================== ====== ====
====================================== == ===========
=====================================================
readFile "a" >>= \s -> writeFile "b" s >> putStr "ok"
#######
#
# Parsers
#
#######
gv /snarf/http/www.cs.chalmers.se/~rjmh/Papers/arrows.ps &
gv /snarf/http/www.cs.chalmers.se/~rjmh/Papers/pretty.ps &
# (find-hugsfile "lib/Prelude.hs" "-- Monad classes")
# (find-fline "~/CRIM/005ideas" "MonadPlus")
# (find-hugsfile "lib/Prelude.hs" "-- Lists")
# (find-hugsfile "lib/Prelude.hs" "instance Monad [ ] where")
(>>) :: m a -> m b -> m b
p >> q = p >>= \ _ -> q
instance Monad [ ] where
(x:xs) >>= f = f x ++ (xs >>= f)
[] >>= f = []
return x = [x]
-- [a1, a2, a3] >>= f = f a1 ++ f a2 ++ f a3
-- [a1, a2] >> [b1, b2, b3] = [b1, b2, b3, b1, b2, b3]
instance MonadZero [ ] where
zero = []
instance MonadPlus [ ] where
[] ++ ys = ys
(x:xs) ++ ys = x : (xs ++ ys)
#######
#
# runhugs
#
#######
# (find-esfile "perl1.e" "lasagna")
# (find-hugsfile "demos/cgi/")
# (find-hugsfile "src/")
# (find-hugsfile "src/runhugs.c")
cat > /tmp/h <<'---'; runhugs /tmp/h
main = putStr "foo";
---
runhugs /tmp/h
function rhugs () {
cat > ${TMPHUGSFILE:-/tmp/h}
runhugs ${TMPHUGSFILE:-/tmp/h}
}
rhugs <<'---'
main = putStr "foo";
---
rhugs <<'---'
main = do {
putStr (show "foo");
putStr (show [1, 2]);
}
---
rhugs <<'///'
-- lmatch :: String -> String -> Bool
lmatch "" s = True
lmatch (c:cs) (c':cs') = if (c == c') then (lmatch cs cs') else False
lmatch _ _ = False
main = putStr (show (lmatch "foo" "foobar"))
///
rhugs <<'///'
a = 2 *
3 + 4 * 5
main = putStr (show a)
///
#######
#
# haskell-mode
#
#######
# (find-fline "/snarf/http/www.haskell.org/haskell-mode/haskell-mode.tar.gz")
# (find-enode "Top")
# (find-elnode "Top" "\nLoading\n")
# (find-node "(elisp)How Programs Do Loading")
(setq load-path (append load-path '("/usr/src/haskell-mode")))
rm -Rv /usr/src/haskell-mode/
mkdir /usr/src/haskell-mode/
cd /usr/src/haskell-mode/
tar -xvzf /snarf/http/www.haskell.org/haskell-mode/haskell-mode.tar.gz
# (code-c-d "hmode" "/usr/src/haskell-mode/")
# (find-hmodefile "")
# (find-hmodefile "haskell-mode.el")
# load-path
("/usr/lib/emacs/site-lisp/w3" "/usr/share/emacs19/site-lisp/mew" "/etc/emacs19" "/etc/emacs" "/usr/local/share/emacs/19.34/site-lisp" "/usr/local/share/emacs/site-lisp" "/usr/share/emacs/19.34/site-lisp" "/usr/share/emacs/site-lisp" "/usr/share/emacs/19.34/lisp")
###############
#
# hbc 0.9999.4
#
###############
cd /usr/src/
rm -Rv hbc
mkdir hbc
cd /usr/src/hbc/
tar -xvzf /snarf/ftp/ftp.cs.chalmers.se/pub/haskell/chalmers/hbc-0.9999.4.src.tar.gz
tar -xvzf /snarf/ftp/ftp.cs.chalmers.se/pub/haskell/chalmers/hbc-0.9999.4.bin-i386-linuxELF.tar.gz
cd /usr/src/hbc/
find -name '*.[ch]' > .files.ch
# (find-hbcfile "README" 40)
cd /usr/src/hbc/src/
rm config.status
#
./configure <<EOF
m_80386
linux
gcc
n
y
n
y
y
n
n
/usr/src/hbc/bin
/usr/src/hbc/lmlc
/usr/local/man/man1
EOF
#
make universe |& tee ../omu
# (find-hbcfile "src/bin/mycc")
for i in lmlc hbc lmlmake hbcmake hp2ps addsign hbcaddsign hbcgrep
do ln -v -s /usr/src/hbc/bin-i386-linuxELF/exe/$i /usr/bin/$i
done
for i in lmlc hbc lmlmake hbcmake hp2ps addsign hbcaddsign hbcgrep
do rm /usr/bin/$i
done
#############
#
# Otter
#
###########
cd /usr/src/
rm -Rv otter-3.0.4
tar -xvZf /snarf/ftp/info.mcs.anl.gov/pub/Otter/otter.tar.Z
cd /usr/src/otter-3.0.4/
cd /usr/src/otter-3.0.4/source/
make |& tee om
ln -s /usr/src/otter-3.0.4/source/otter /usr/bin/otter
cd /usr/src/otter-3.0.4/examples/
Run_all auto
Run_all fringe
Run_all kalman
Run_all misc
# two_inv takes a lot of time (8'30") to complete.
# Run_all program
Run_all wos
cd ~/OTTER/
otter < ~/OTTER/foo.in
# (find-fline "~/OTTER/foo.in")
#######
#
# LL(1) parser
#
#######
# (find-fline "$S/http/www.cs.uu.nl/groups/ST/Software/Parse/UU_Parsing.tar.gz"
)
######
#
# JPEG spec: paper + gofer program
#
######
psne http://www.cs.uu.nl/people/jeroen/article/jpeg/jpeg.ps.gz
psne http://www.cs.uu.nl/people/jeroen/article/jpeg/jpeg.gs
######
#
# TkHaskell (old)
#
######
psne http://www.dcs.gla.ac.uk/~nww/TkHaskell/TkHaskellManual.ps.gz
psne http://www.dcs.gla.ac.uk/~nww/TkHaskell/examples.tar.gz
gv /snarf/http/www.dcs.gla.ac.uk/~nww/TkHaskell/TkHaskellManual.ps &
cd /snarf/http/www.dcs.gla.ac.uk/~nww/TkHaskell/
tar -tvzf /snarf/http/www.dcs.gla.ac.uk/~nww/TkHaskell/examples.tar.gz
cd /snarf/http/www.cs.uu.nl/people/jeroen/article/jpeg/
#
# Etc:
#
http://www.cs.ucc.ie/~dornan/TkHaskell.tar.gz
http://www.informatik.uni-ulm.de/abt/pm/ftp/tkgofer.html
ftp://ftp.informatik.uni-ulm.de/pub/PM/TkGofer2.0/tkgofer2.0.tar.gz
http://www.cse.ogi.edu/~nday/Tools/hpp/hpp.html
http://www.cse.ogi.edu/~nday/Tools/Fuss/fuss.html
http://www.cse.ogi.edu/~jl/jokes.html
http://haskell.systemsz.cs.yale.edu/haskellscript/
######
#
# Scheme standard
#
######
xdvi $S/http/www.neci.nj.nec.com/homepages/kelsey/r5rs.dvi
dpkg -i ~/HASH/r5rs-doc
# (find-vldifile "r5rs-doc.list")
# (find-node "(r5rs)Top")
cd $S/http/www.neci.nj.nec.com/homepages/kelsey/
ftp://ftp.cs.indiana.edu/pub/scheme-repository/doc/misc/scheme_1.faq
ftp://ftp.cs.indiana.edu/pub/scheme-repository/doc/misc/scheme_2.faq
# (find-fline
"$S/ftp/ftp.cs.indiana.edu/pub/scheme-repository/doc/misc/scheme_1.faq")
# (find-fline
"$S/ftp/ftp.cs.indiana.edu/pub/scheme-repository/doc/misc/scheme_2.faq")
cd /tmp
cp /snarf/http/www.neci.nj.nec.com/homepages/kelsey/r5rs.dvi .
make -f ~/LATEX/Makefile r5rs.pdf
lynx $S/http/www.cs.indiana.edu/scheme-repository/doc.standards.html
######
#
# sml-nj
#
######
# (find-fline "/usr/doc/sml-nj/")
# (find-vldifile "sml-nj.list")
# (find-fline "/usr/doc/sml-nj/examples/")
# slinkb2:
apt-get install sml-nj
pdsc /debian/dists/slink/main/source/devel/sml-nj_110-4.dsc
# (find-smlsfile ".files.exit")
#
dpkg --purge sml-nj
cd /usr/src/sml-nj-110/
debian/rules binary |& tee odrb
# (find-smlsfile "odrb" "Go for it")
# (find-smlsfile "odrb" "make[1]: Leaving directory `/6usrc/sml-nj-110/src/runtime/objs")
# (find-smlsfile "odrb" "[Loading")
# (find-smlsfile "config/install.sh" "# build the run-time system")
# (find-smlsfile "config/install.sh" "# boot the base SML system")
# (find-smlsfile "config/install.sh" "<<")
# (find-node "(bash)Bash Conditional Expressions")
# (find-smlsfile "odrb")
# (find-smlsfile "src/runtime/objs/mk.x86-linux")
rm -Rv ~/SML/
mkdir ~/SML/
cp -iv /usr/doc/sml-nj/examples/calc/* ~/SML/
# (find-fline "~/SML/")
# (find-fline "~/SML/sources.cm")
cd ~/SML/
cat > sources.cm <<'---'
Group
is
cml.cm
/usr/lib/sml-nj/src/eXene/lib/sources.cm
/usr/lib/sml-nj/src/eXene/widgets/sources.cm
acc.sml
calc.sml
main.sml
---
# CM.make ();
sml-cm
find * -type f > .files
agrep -l exit $(<.files) |& tee .files.exit
agrep -v sml.bin .files.exit |& tee .files.exit-
agrep exit $(<.files.exit-) |& tee ~/o
# (find-fline "~/o")
# (find-smlsfile "src/runtime/c-libs/posix-process/cfun-list.h" "exit")
psner -nc -np -k -A htm,html -l 200 http://cm.bell-labs.com/cm/cs/what/smlnj/doc/index.html
OS.Process.exit(OS.Process.success);
# glimpse'ing sml-nj
#
cd /usr/src/sml-nj-110/
# perl -nle 'm/.*\.(.*)/ && print $1' < .files | sort | uniq |& tee ~/o
# for i in $(<~/o); do file $(grep '\.'$i'$' .files); done |& tee ~/o2
perl -nle 'm/.*\.(5|burg|c|cfg|cm|debian|doc|dot|fol|grm|h|html|info|ins|l|lex|mldoc|nw|p|pl|sc|sh|sml|template|tex|toc|y)$/ && print $_' \
< .files > .files.toglimpse
glimpseindex -H . -F < .files.toglimpse
######
#
# hol90.10
#
######
# «building_hol»
rm -Rv /usr/src/hol90.10/
cd /usr/src/
tar -xvzf $S/http/www.ftp.cl.cam.ac.uk/ftp/hvg/hol90/hol90.10.tar.gz
cd /usr/src/hol90.10/
# (find-holfile "src/INSTALL.txt" "symbolic link")
cd /usr/src/hol90.10/bin/njsml.1xx/
rm -fv sml
ln -s /usr/bin/sml .
# (find-holfile "src/INSTALL.txt" "ML-Lex")
# (find-holfile "src/Makefiles/njsml.1xx" "LEX")
##LEX=/usr/groups/theory/njml/working/bin/ml-lex
##YAK=/usr/groups/theory/njml/working/bin/ml-yacc
#LEX=/usr/bin/ml-lex
#YAK=/usr/bin/ml-yacc
cd /usr/src/hol90.10/src/
BUILD |& tee ../ob
# Silly test:
cd /usr/src/hol90.10/bin/
echo | hol90
ln -s /usr/src/hol90.10/bin/hol90 /usr/local/bin/
# glimpse'ing HOL
#
cd /usr/src/hol90.10/
# perl -nle 'm/.*\.(.*)/ && print $1' < .files | sort | uniq |& tee ~/o
# for i in $(<~/o); do file $(grep '\.'$i'$' .files); done |& tee ~/o2
perl -nle 'm/.*\.(c|desc|doc|el|h|help|hol_lib|holsig|html|jrh|lex|lib|msg|news|release|sig|sml|stable|sty|taken|template|tex|thms|txt|yak)$/ && print $_' \
< .files > .files.toglimpse
glimpseindex -H . -F < .files.toglimpse
######
#
# hol info
#
######
# Some HOL pages:
lynx $S/http/lal.cs.byu.edu/lal/hol-documentation.html
lynx $S/http/www.cl.cam.ac.uk/Research/HVG/FTP/FTP.html
# Automated reasoning systems:
lynx $S/http/www.cl.cam.ac.uk/users/jrh/ar.html
# (find-fline "/usr/src/hol90.10/src/INSTALL.txt")
# (find-fline "/usr/src/hol90.10/src/Makefiles/")
# (find-fline "/usr/src/hol90.10/src/Makefiles/")
lynx /usr/src/hol90.10/doc/manual.html
######
#
# haskell-mode
#
######
pdsc $SDEBIAN/dists/potato/main/source/devel/haskell-mode_1.2-1.dsc
cd /usr/src/haskell-mode-1.2/
debian/rules binary |& tee odrb
cd /usr/src/
mv -v haskell-mode*.deb .debs
cd /usr/src/.debs/
dpkg-scanpackages . /dev/null | tee Packages
apt-get update
apt-get install haskell-mode
# (find-vldifile "haskell-mode.list")
#####
#
# Isabelle
#
#####
rm -Rv /usr/src/Isabelle98-1/
cd /usr/src/
tar -xvzf $S/http/www.cl.cam.ac.uk/Research/HVG/Isabelle/dist/Isabelle98-1.tar.gz
cd /usr/src/Isabelle98-1/
cat >> etc/settings <<'---'
ML_HOME=/usr/lib/sml-nj
---
cd /usr/src/Isabelle98-1/
./configure |& tee oc
cd /usr/src/Isabelle98-1/
./build |& tee ob
# (code-c-d "isa" "/usr/src/Isabelle98-1/")
# (find-isafile "")
# (find-isafile "ob")
# (find-isafile "src/Pure/")
# (find-isafile "INSTALL")
# (find-isafile "etc/settings")
# (find-isafile "heaps/smlnj-110/log/Pure")
Unable to locate /usr/bin/.arch-n-opsys
Please check your ML_HOME setting!
# (find-vldifile "sml-nj.list")
# (find-fline "/usr/doc/sml-nj/")
# (find-fline "/usr/lib/sml-nj/")
######
#
# TkHol
#
######
cd /usr/src/
rm -Rv TkHol.0.3c/
tar -xvzf $S/ftp/ftp.cl.cam.ac.uk/hvg/contrib/TkHol/TkHol.0.3c.WithoutTclTkExpect.tar.gz
cd /usr/src/TkHol.0.3c/
patch tksml/configure <<'---'
113a114,116
> #Edrx
> if false; then
>
181a185,187
>
> #Edrx
> fi
---
# (find-tkholfile "tksml/configure" "Edrx")
# (find-fline "~/TCL/patchTkHol")
~/TCL/patchTkHol $(find * | grep Make) |& tee op
cd /usr/src/TkHol.0.3c/
EXPECTK=/usr/bin/expectk5.28 HOL90_ROOT_DIR=/usr/src/hol90.10 \
./configure |& tee oc
# (find-tkholfile "oc")
# (find-tkholfile "configure" "hol90 root installation directory")
make |& tee om
# (find-tkholfile "om" "Error")
# (find-tkholfile "hol90/holplus/")
# (find-tkholfile "hol90/holplus/holplus_lib.sml")
# (find-holfile "src/portableML/njsml.1xx.sml" "fun open_out")
smlglimpse -w IO
smlglimpse open_out
#
# Lixos?
#
cd /usr/src/
rm -Rv tcl7.4/
rm -Rv tk4.0/
rm -Rv expect*
rm -Rv TkHol.0.3c/
rm -Rv /usr/src/TkHol.0.3c/
cd /usr/src/
tar -xvzf $S/ftp/ftp.cl.cam.ac.uk/hvg/contrib/TkHol/TkHol.0.3c.WithoutTclTkExpect.tar.gz
cd /usr/src/TkHol.0.3c/
# (find-tkholfile "")
# (find-tkholfile "configure")
# (find-tkholfile "tksml/configure" "We need Tk version = 4.0")
cd /usr/src/TkHol.0.3c/
ln -s $S/ftp/ftp.cl.cam.ac.uk/hvg/contrib/TkHol/tcl7.4.tar.gz .
ln -s $S/ftp/ftp.cl.cam.ac.uk/hvg/contrib/TkHol/tk4.0.tar.gz .
ln -s $S/ftp/ftp.cl.cam.ac.uk/hvg/contrib/TkHol/expect-5.18.tar.gz .
./configure |& tee oc
make expectk |& tee ome
cd /usr/src/TkHol.0.3c/
./configure |& tee oc
# bash -v ...
strace-to ~/s ./configure |& tee oc
cd /usr/src/TkHol.0.3c/tksml/
cp configure configure0
perl -nle 's/4\.0/4.2/g; s/7\.4/8.0/g; s/5\.18/5\.28/; print $_' \
< configure0 > configure
chmod 777 configure
# (find-tkholfile "")
# (find-node "(bash)Bash Conditional Expressions")
# (find-fline "/usr/doc/tcl8.0/changelog.gz" "version 7.4,")
# (find-fline "/usr/doc/tk8.0/changelog.gz" "Release 4.0,")
# (find-fline "/usr/doc/expect5.24/changelog.gz")
# (find-fline "/usr/doc/expect5.24/HISTORY.gz")
# (find-fline "/usr/doc/expect5.24/")
#
# docs:
#
cd /usr/src/TkHol.0.3c/
cd doc/Tutorial/
make tutorial.ps |& tee om
#
cd /usr/src/TkHol.0.3c/
cd doc/paper1/
make paper.dvi |& tee om
#######
#
# Hugs (potato: 199806)
#
#######
pdsc $SDEBIAN/dists/potato/non-free/source/interpreters/hugs_1.4.199806-4.dsc
cd /usr/src/hugs-1.4.199806/
debian/rules binary |& tee odrb
mv -v /usr/src/hugs*.deb /usr/src/.debs/
apt-update
apti hugs hugs-doc
# (find-hugsfile "odrb")
# (find-fline "/usr/doc/hugs/")
# (find-fline "/usr/doc/hugs-doc/")
# (find-vldifile "hugs.list")
# (find-vldifile "hugs-doc.list")
gzip -cd < $SDEBIAN/dists/potato/non-free/source/interpreters/hugs_1.4.199806-4.diff.gz | grep -n '^+++ '
######
#
# TclHaskell (sep/99)
#
######
rm -Rv /usr/src/TclHaskell/
cd /usr/src/
tar -xvzf $S/http/www.dcs.gla.ac.uk/~meurig/TclHaskell/TclHaskell.tar.gz
cd /usr/src/TclHaskell/
cd src/
make XINC=/usr/X11R6/include XLIB=/usr/X11R6/lib \
TclPrim.so |& tee om
cd /usr/src/TclHaskell/demo/
expect -c '
spawn /usr/local/bin/hugs -P[join {
/usr/src/TclHaskell/src
/usr/local/share/hugs/lib
/usr/local/share/hugs/lib/hugs
/usr/local/share/hugs/lib/exts
} ":"] Demo.hs
expect "Main>"
send "main\n"
interact
'
# (find-THfile "")
# (find-THfile "Readme.txt" "TclPrim.so")
# (find-THfile "src/")
# (find-THfile "src/makefile")
# (find-THfile "bin/tclexe")
# (find-THfile "demo/")
# (find-THfile "doc/")
lynx /usr/src/TclHaskell/doc/usermanual.html
(export TK_LIBRARY=/usr/lib/tk8.0/
export TCL_LIBRARY=/usr/lib/tcl8.0/
hugs)
# (code-c-d "TH" "/usr/src/TclHaskell/")
# (find-THfile "")
# (find-THfile "src/" "makefile")
#####
#
# Hugs98-May1999
#
#####
# «hugs99-may99»
# (code-c-d "hugs" "/usr/src/Hugs98/")
# (find-hugsfile "")
# (find-hugsfile "Install")
rm -fv /usr/local/bin/{hugs,runhugs}
rm -Rv /usr/local/share/hugs/
rm -Rv /usr/src/Hugs98/
cd /usr/src/
tar -xvzf $S/http/www.cse.ogi.edu/~mpj/Hugs98/Hugs98-May1999.tar.gz
cd /usr/src/Hugs98/
cd /usr/src/Hugs98/src/unix
./configure --prefix=/usr/local |& tee oc
cd ..
make install |& tee omi
cd /usr/src/Hugs98/
make clean |& tee omc
#####
#
# Typing Haskell in Haskell
#
#####
# Needs hugs99-may99.
gv $S/http/www.cse.ogi.edu/~mpj/thih/thihA4.ps
rm -Rv /usr/src/thih-Sep-1-1999/
cd /usr/src/
tar -xvzf $S/http/www.cse.ogi.edu/~mpj/thih/thih-Sep-1-1999.tar.gz
cd /usr/src/thih-Sep-1-1999/
# (find-fline "/usr/src/thih-Sep-1-1999/")
# (find-fline "/usr/src/thih-Sep-1-1999/Readme" "Simple example")
expect -c '
spawn /usr/local/bin/hugs
expect "Prelude>"
send ":l SourcePrelude\n"
interact
'
#####
#
# ocaml-2.02 (potato, on slink)
# 99oct08
#
#####
# «ocaml»
# (code-c-d "oc" "/usr/src/ocaml-2.02/")
pdsc $SDEBIAN/dists/potato/non-free/source/devel/ocaml_2.02-5.dsc
cd /usr/src/ocaml-2.02/
debian/rules binary |& tee odrb
mv -v /usr/src/ocaml*deb /usr/src/.debs/
apt-update
# (find-ocfile "README" "http://")