A Compiler is a computer program that translates the source code of another computer program from a high-level programming language (BASIC for instance) to a low-level programming language, typically binary object-code. Often, the high-level programming language is not executable in it's original form and therefore needs to be translated into a low-level, executable form through compilation.
Sometimes a program written in a high-level language is executable through an interpreter (as with BASIC 2.0), and other reasons exist for wanting to compile it to a low-level language. Compiled programs tend to execute much faster on the same hardware than interpreted programs. Also compilation tends to obfuscate the program code, making it more difficult to make unauthorized changes to the program.
There were several compilers developed for the Commodore 64, for a variety of high-level languages. Some of the most popular translated the built-in BASIC 2.0 language into low-level object-code or "machine language" programs that could be executed through a BASIC 2.0 stub (typically a single
SYS command). A common example of such a BASIC 2.0 compiler was BLITZ.