While doing some reading, I came across the terms "Intermediate Language" and "3AC".
IL, as I understand, is the middle "step" in the source code compilation process. More specifically, I'm reading about bytecode (Java) and C.
The way I interpret it (correct me if am wrong) is;
Source Code 1 (ex. Lisp) -> Intermediate Language (C) -> Assembly Language -> Machine Code
Source Code 2 (ex. Java) -> Bytecode -> Java Virtual Machine
So based on that, am struggling to see where does The Three Address Code (TAC/3AC) comes into play, and what for its used.