Interpretation is always done in RealTime. The function of interpretation, when it is done later, is usually called translation or transcription. An interpreter translates from one form to another in RealTime. An interpreter usually converts source code directly into a form which can be run immediately. I am interested in the mechanisms of interpretation, and would like to see different people's views of what defines an interpreter and an overview of the mechanism used. This is my view of the process of interpretation before writing the interpreter. Hopefully others will give me an insight into other views by including them here. Who knows, somebody may beat me to articulating mine. That would help me. --PeterLynch ---- The definition of '''interpreter''' is very simple wrt ProgrammingLanguages: An interpreter is an additional level of indirection away from the machine. An interpreter utilizes the power of this indirection by adding a run-time environment providing real-time interactivity. (A compiler can be said to offer a level of indirection too, but this indirection is on the axis of time [save-> compile-> run-> change] cycle rather than "on the stack".) --MarkJanssen