Introduction to Program Translation
Level of Study
Objectives and Content
The course gives an introduction to the design and implementation of a compiler, with emphasis on principles and techniques for program analysis and translation. The course also gives an overview of tools for compiler construction. Emphasis is on a semester project which gives practical experience in use of such tools where analysis of structured input is required, e.g. interpretation of commands in an operative system, queries in a database system, pattern matching in text strings, and developing compilers for programming languages for specific purposes.
After completing the course INF225, the student shall be able to
- define and use important concepts such as languages, grammars, syntax trees, dependencies, symbol tables and typical internal representations,
- discuss common code analysis techniques and the principles of compiler organisation,
- use modern tools for source code analysis and manipulation
- implement code analysis and manipulation tools based on a simple language description
Required Previous Knowledge
At least 60 ECTS in computer science, preferably including some mathematics
Recommended Previous Knowledge
Credit Reduction due to Course Overlap
I125: 10 SP
Access to the Course
Access to the course requires admission to a programme of study at The Faculty of Mathematics and Natural Sciences
Teaching and learning methods
Up to 6 hours each week in 13 weeks with lectures and exercise class.
Compulsory Assignments and Attendance
Obligatory activities are valid for two semesters.
Forms of Assessment
Oral exam. If the course has many participants, there can be written exam (3 hours). It is opportunity for grades on exercises, which can be included in the final grade.
Examination Support Material
The grading scale used is A to F. Grade A is the highest passing grade in the grading scale, grade F is a fail.
Examination every semester the course is taught, and the subsequent semester.
The reading list will be available within June 1st for the autumn semester and January 1st for the spring semester
The course will be evaluated by the students in accordance with the quality assurance system at UiB and the department.
The Programme Committee is responsible for the content, structure and quality of the study programme and courses.
Course coordinator and administrative contact person can be found on Mitt UiB, or contact Student adviser
The Faculty of Mathematics and Natural Sciences represented by the Department of Informatics is the course administrator for the course and study programme.
T: 55 58 42 00