This is alpha (= Alpha Loves to Perform Hasty Assembler), a program
which is able to read and execute Alpha assembler files produced by
the compilers written in programming languages compiler course
exercises at Helsinki University of Technology (HUT).  See file
COPYRIGHT for pertinent copyright notices.

alpha does not interpret full Alpha assembler, only single module
programs and with a restricted library support.

To install alpha, you need GNU gcc, flex and bison.  The standard ones
will NOT do.  However, already flexed and bisoned files are included.
alpha should compile by simply 'make'ing it.  It produces three
executables:
  alpha-fast provides maximally efficient interpretation.  Try e.g.
    running './alpha-fast esim.4.out'.
  alpha-debug provides a command line interface with commands run (r
    for short) for running the program until it finishes, step (s) for
    executing one instruction, back (b) for retracting the latest
    instruction executed, print (p) for printing the contents of the
    given register, and trace (t) for toggling trance on or off.  Some
    library functions can not yet fully retract their execution.  Note
    that for long runs the log will grow large and consume a lot of
    memory.
  alpha-aggressive is like alpha-debug, but without facilities for
    undoing instructions.  It also performs stringent checks for
    correctness of executed assembler by e.g. cluttering all caller
    saved registers in library calls.
