In order to fully enter into the meaning of the term compiler, it is necessary that, first of all, we proceed to discover its etymological origin. In this case, it must be stated that it derives from Latin, exactly from the verb "compilare", which means "to put together."
Compiler is one or something that compiles : that is, it brings together various elements or fragments into a single unit. In the field of computing , compiling consists of translating a program written in a certain language into another .
For example: "The publisher chose me as the compiler of a new anthology of children's stories" , "For years I worked as a compiler of statistics in a sports channel" , "The Spanish essayist was the compiler of the brand new volume" .
A compiler, therefore, is someone who compiles something . If an individual calls several journalists to conduct interviews with figures in the world of sports , and then compiles these works into a book, it can be said that he is the compiler of the work in question. This person did not do the interviews, but rather compiled the interviews done by others and made them into a unit.
We said that, in computing, compilation is a process that involves the translation of a program developed in a certain programming language to another that is written in a different language. Generally this second program is made in machine language , which is a code that processors can interpret directly.
In this compilation process, the program that is responsible for the translation in question is called the compiler. The compilation is divided into a semantic, syntactic and lexical analysis of the source program and the synthesis that is reflected in the object language. The task is carried out by the compiler, which depending on its properties will be classified as an optimizing compiler , cross compiler or just in time ( JIT ) compiler.
In addition to all these aspects about the compiler from a computer point of view, there are other issues that are worth taking into account, such as these:
-Every compiler of this type has two very different parts: the Front End, which is the part that is responsible for interacting with the user and undertakes the analysis of the source code , and the Back End. This second part is the one in charge of proceeding to generate the code in the machine format.
-The functions carried out by this software in question can be established in this order: analysis phase (lexical analysis, syntactic analysis and semantic analysis), synthesis phase (intermediate code generation) and code optimization . This last stage, which is sometimes included in the synthesis stage, basically consists of improving the aforementioned intermediate code so that machine code can be achieved that is really very fast to execute.
-Compilers have become fundamental in our daily lives. And they do vital work. Yes, because if they did not exist we would not be able to use all types of computer applications. They are the basis of programming.