This week, we learned about the interpreter style. The interpreter is organized by reading and finding data.
First, let's look at what an interpreter is:
An interpreter is a programs that executes another program (the interpreter is a procedure used to execute other programs).
An interpreter implements a Vsan, which may is different from the underlying hardware platform. (The interpreter implements a virtual machine for different hardware platforms.)
To close the gap between the computing engine expected by the semantics of the program and the Computing engine available In hardware.
(Translate high-level programs into instructions that can be understood at low levels of abstraction to eliminate semantic differences between programming languages and hardware)
Application of the Interpreter:
Including all kinds of language environment, Internet browser, data analysis and transformation, etc.;
LISP, Prolog, JavaScript, VBScript, HTML, Matlab, database system (SQL interpreter), various communication protocols, etc.
The composition of the Interpreter:
Interpreter Style:
Basic components:
An interpretation engine (interpreter engines)
A memory that contains (storage area):
The pseudo-code to be interpreted (interpreted source code)
A representation of the control state of the interpretation engine (the representation of the current controlling states of the interpreter engines)
A representation of the current state of the program being simulated. (The representation of the current execution state of the program)
Connector:
Data access (for storage)
Three strategies for the interpreter:
Traditional interpreter (traditionally interpreted)
Pure interpretation of execution
BYTE-code-based interpreter (compiled to bytecode which are then interpreted)
Compiling? Interpreting execution
Just-in-time (JIT) compiler
compiling | | Interpreting execution
About the Interpreter style