Compilers is a core subject of the Specialty in Computing belonging to the Computer Science Degree. It is given in the 6th semester of the degree.
Procesadores de Lenguajes es una asignatura obligatoria de la Especialidad en Computación de Ingeniería Informática. Se imparte en el 6º semestre de la titulación.
For a given programming langage, a compiler is a program able to deal with source programs written in that language so that to execute it or prepare it for execution. This general definition allows for different systems capable of dealing with programs: compilers and interpreters, web browsers interpreting HTML, SQL databases, advanced text editors such as Textures, PostScript printers and in general, almost every tool which translates/interpretes/compiles a formal description input as source.
The study of the subject is approached from the point of view of designing and implementing a language processor. As a requirement, a precise description of the language will be required. This description (specification of the programming language) is object of interest not only for the programmer of the language processor (who needs to know all the features of the language) but also for the programmer (the end user of both the programming language and language processors) which must know all the features of the language in order to use them properly.
A Computer Science Engineer must have a deep knowledge about the development of language processors in order to understand many professional tools work and therefore to achieve a better usage. Additionally, by getting a good knowledge about the tools used for language processor the Computer Science Engineer has the opportunity to learn general pourpose tools useful for developing specific translators.