# User Manual - avram - a virtual machine code interpreter
avram - a virtual machine code interpreter

## 1 User Manual

This chapter provides the basic information on how to use `avram` to execute virtual machine code applications.

`avram` is invoked by typing a command at a shell prompt in one of these three forms.

         avram [general options]
         avram [filter mode options] codefile[.avm]
         avram [parameter mode options] codefile[.avm] [parameters]

In the second case, `avram` reads from standard input, and may of course appear as part of commands such as

         avram [filter mode options] codefile[.avm] < inputfile
         anothercommand | avram [filter mode options] codefile[.avm]

When `avram` is invoked with the name of an input file (with a default extension `.avm`), it reads virtual machine code from the file and executes it on the host machine.

The virtual code format used by `avram` is designed to support the features of functional or applicative programming languages. Although this chapter documents only the usage of `avram` and not the internals, it will be helpful to keep in mind that the virtual machine code expresses a mathematical function rather than a program in the conventional sense. As such, it performs no action directly, but may be applied in a choice of ways by the user of `avram` according to the precise operation required.

The following sections provide information in greater detail about usage and diagnostics.