		       L M L
		    Release 0.99
		      90-08-20

INSTALLATION
-------------------
 TAPE
------
Make a fresh directory (where there is at least 15 Mbytes free) and do a
	tar x				(or whatever local wisdom advises)

 FTP
-----
Get the files you need and do, make a fresh directory, cd there and
	uncompress < file | tar xf -
for each of file.

 Both
------
Make a directory where you want to keep the public lml files
(preferably named /usr/local/lib/lmlc) and do (take a look in the
Makefile first)
	make MACHINE=<machine>
(where <machine> is sun3 (SUN3 with SUNOS 4.x), sun4 (SUN4 etc)
dec3100 (DECstation 3100), vax (VAX with BSD 4.3),
or symmetry (Sequent Symmetry).)
The compiler is called lmlc and the interactive version lmli.
If you have used a name different from /usr/local/lib/lmlc you should
set the environment variable LMLDIR to the name you used instead.

After this installation you can remove all the <machine> directories and files.

*** The Makefiles are not yet organised as they should. Have patience! ***


----------------------------------------------------------------------------

	A small roadmap:


This is a complete set of files to run and recompile the LML compiler.
The organisation of the files are still somewhat chaotic. We hope to improve
this in the future.


	bin	execuatable programs needed to recompile the compiler.
	src	source for the new compiler
	       /Expr	Expr type
	       /Gcode	G-code generator
	       /Gopt	G-code optimizer
	       /curry	some Haskell initial transformations
	       /expr	expr type
	       /flic	flic support
	       /llift	lambda lifting
	       /lmlc	C driver for the compiler.
	       /masm	M-code assembler
	       /mcode	m-code generator
	       /lib	library functions
	       /mopt	m-code optimizer
	       /m_32000	machine code generator for NS32x32 (Sequent Balance)
	       /m_360	machine code generator for 360 (and 370...), untested
	       /m_68000	machine code generator for 68020 (Sun3)
	       /m_80386	machine code generator for 80386 (Sequent Symmetry)
	       /m_cray	machine code generator for CRAY X/MP
	       /m_mips	machine code generator for MIPS
	       /m_rtpc	machine code generator for IBM RT/PC
	       /m_sparc	machine code generator for SPARC
	       /m_vax	machine code generator for the VAX
	       /rename	unique name assignment
	       /runtime	runtime system
	       /simpl	constant folding...
	       /strict	very simple strictness analysis
	       /syntax	parser (yacc&C)
	       /transform reading&printing&pattern&matching&much more
	       /type	type checking
	       /zf	list comprehension stuff
	doc	documentation (incomplete)
	contrib	contributed software
	example	some sample LML programs

	sun3		installable version for SUN3, with SunOS 4.0.x
	sun4		installable version for SUN4, with SunOS 4.0.x
	symmetry	installable version for Sequent Symmetry
	dec3100		installable version for DECstation 3100
	vax		installable version for VAX, BSD 4.3

To check that the compiler can bootstrap itself run the shell script
	bootstrap m_xxx
where m_xxx is one of the machine types (m_xxx).


To make the interactive system cd to ilml and then
	setenv MTARGET m_xxx
	make
	make install

Note that the interactive version only works with machines that have
"classical" a.out headers, i.e. VAX, SUN3 and Sequent.

Please report any bugs or other problems you find.

	-- Lennart Augustsson 
	-- Thomas Johnsson

Email:	augustss@cs.chalmers.se
	johnsson@cs.chalmers.se, johnsson@cs.glasgow.ac.uk

mail:
	Dept. of Computer Sciences
	Chalmers University of Technology
	412 96 Gothenburg
	Sweden
