Translation Process
Translation from Source Code to Object Code is usually not what you have on your mind during the development of your software solution, however it is essential to know, to fully understand the execution of a program.
Translation is done firstly by one of three methods, compilation, interpretation and incremental compilation.
Compilation refers to the converting of source code into object code in reguards to a program as a whole. This means that the all the source in the program is converted into object code and stored for later execution. When stored, the code hides the original algorithm that it was compiled from and enables optimisation which make the compiled code smaller.
Interpretation is the process of translating source code to object code line by line; after a line is translated it is immediately executed before moving onto the next line. This method of translating is best used during the development stages of software design and development, due to itss ability to detect syntax errors immediately and also the ability to fix run-time errors with ease.
From textbook to textbook there actually isn’t a single definition for incremental compilation. However from experience, an incremental compiler receives the best from both “worlds”, and can be thought of as a very fast interpretater. What an incremental compiler does is store frequently used code so that it can be called and executed, instead of repeated the same instruction line by line with an interprator. However compilation is still faster and more secure.
An important point to note is that interpretation and incremental compilation do have a security factor, it is the fact that their object code isn’t stored, not stored wholly and therefore the object code cannot be duplicated like a compiled program.
Related articles for extra reading;
- Compiler theory (slideshare.net)
- The Best Code You Will Ever Write (elegantcode.com)
- Conditional Attribute (tirania.org)

