A technique where the translation is guided by the grammar of the input language.

  1. Define a translation for each grammar production
  2. Parse the input source
  3. Apply the translations to the parse tree (bottom up)
  4. Final result is the translation of the root