A program that is compiled during execution time, rather than before execution. Commonly used in tandem with Interpreters.

  • The code must be continuously analyzed during execution to identify which segment of the code is to be compiled
  • Optimizations can happen on the fly, certain code segments can be saved with Common Subexpression Elimination