An application written in an interpreted language is processed in its original form. This is in contrast to code written in a compiled language which must be converted into executable machine code before it is run. The distinction between interpreted and compiled scripting languages is becoming less and less clear. For example, PHP can be both interpreted and compiled. HHVM (HipHop Virtual Machine) is a relatively new execution engine for PHP that compiles and then translates PHP into machine code prior to execution, effectively treating PHP as a compiled language rather than an interpreted language.