-all:
+all: Typechecker Interpreter Compiler
+
+doc: Docsyntax.dvi
+
+Docsyntax.dvi: Docsyntax.tex
+ latex Docsyntax.tex; dvips Docsyntax.dvi -o Docsyntax.ps
+
+Testsyntax: Testsyntax.hs Parsyntax.hs Lexsyntax.hs Abssyntax.hs
+ ghc --make Testsyntax.hs -o Testsyntax
+
+Typechecker: Typechecker.hs Typecheck.hs Parsyntax.hs Lexsyntax.hs Abssyntax.hs
+ ghc -fglasgow-exts --make Typechecker.hs -o Typechecker
+
+Interpreter: Interpreter.hs Interpret.hs Typecheck.hs Parsyntax.hs Lexsyntax.hs Abssyntax.hs
+ ghc -fglasgow-exts --make Interpreter.hs -o Interpreter
+
+Compiler: Compiler.hs Compile.hs Typecheck.hs Parsyntax.hs Lexsyntax.hs Abssyntax.hs
+ ghc -fglasgow-exts --make Compiler.hs -o Compiler
+
+Parsyntax.hs: Parsyntax.y
happy -gca -idebug Parsyntax.y
+
+Lexsyntax.hs: Lexsyntax.x
alex -g Lexsyntax.x
- latex Docsyntax.tex; dvips Docsyntax.dvi -o Docsyntax.ps
- ghc -fglasgow-exts --make Testsyntax.hs -o Testsyntax
+
clean:
-rm -f *.log *.aux *.hi *.o *.dvi
-rm -f Docsyntax.ps