This directory contains an interpreter for a small functional
programming language (called "AS"). It uses JFlex and CUP.

Directory contents:

- Main.java is the main program. It reads an AS program from
  std in and interprets it.
  
- 'ant run' or the Makefile runs jflex, cup, javac and the
  compiled interpreter

- Classes beginning with "T" implement the abstract syntax tree.
  They also contain context condition checking and the interpreter.

- Symtab.java, SymtabEntry.java, STEfun.java, STEvar.java implement
  the symbol table.

- scanner.lex and parser.cup contain the scanner and parser.

- example.as is an example program in AS


The language is described in:
Manfred Broy: Einfuehrung in die Informatik, Springer Verlag 

The files are a solution to excercise 3.40 in the book:
Manfred Broy,Bernhard Rumpe: 
Uebungen zur Einfuehrung in die Informatik --                      
Strukturierte Aufgabensammlung mit Musterloesungen, 
Springer Verlag, 2001

Both books are only available in German. Sorry.
