Compiler Design and Translation Technique
Programme course instance, 6 Credits
- Period : 2028-March-27 until 2028-June-04
- Location: Campus Karlskrona
- Type of instruction: Campus, day-time, forty percent 40%
- Main field of study: Computer science
- Language of instruction: Swedish
- Education level: G1F
- Application code: BYCK7
- Course code: DV1655
This course is part of a programme and cannot be applied.
Compiler Design and Translation Technique, 6 Credits
Most of the programs that we write are written using a high-level programming language, whereas the hardware understands only low-level code (binary instructions). Compilers are software program that can translate a program written in one language (usually a high-level language, that is called a source language) into an equivalent program in another language (usually a lower-level language such as assembly, known as target language). The assembler then is responsible to generate the binary code from an assembly code. It is common for compilers to be used for translation from one high-level (source) language to another high-level (target) language, such compilers are called source-to-source compilers. Understanding how different compilation phases are designed and implemented (including lexing, parsing, type-checking, code generation, interpretation) and the application of different translation techniques is essential for the advanced programmer that might be willing to perform any extensions to the existing programming languages or optimalizations to existing compilers. Additionally, this course guides students through the steps needed to design new domain-specific languages and develop their corresponding compilers. Furthermore, the techniques used in translation and compiling are also applicable in many other areas, where the knowledge of this subject is particularly useful.