<?xml version="1.0" encoding="iso-8859-1"?>
<educationInfo xmlns="http://www.sis.se/ss10700/EMIL2.01" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sis.se/ss10700/EMIL2.01 EMIL2.xsd">
<identifier>i.uoh.oru.H5015.20192</identifier>
<code>DT125G</code>
<lastEdited>2026-06-21T05:10:41</lastEdited>
<expires>2022-03-15</expires>
<title>
<string lang="swe">Kompilatorer och interpretatorer</string>
<string lang="eng">Compilers and Interpreters</string>
</title>
<description>
<string lang="swe">Som programmerare behöver man ofta skriva program som analyserar, tolkar och översätter olika typer av data eller program. Det kan vara allt från HTML-filer och enkel konfigurationsinformation till kod i C++. I kursen går vi igenom teori och praktik för hur man gör sådan tolkning och översättning i ett datorprogram. Vi studerar uppbyggnaden av kompilatorer och interpretatorer, och hur dessa delar upp källkoden i symboler, analyserar den i enlighet med programspråkets grammatik, optimerar, och till slut genererar körbar kod. I kursen ingår också run-time-omgivningar och verktyg för att bygga kompilatorer. En stor del av kursen utgörs av programmeringsövningar, där studenterna bland annat får bygga viktiga delar av en kompilator.</string>
<string lang="eng">As a programmer, one often has to write programs that analyse, understand and translate different types of other programs. That can be HTML files or simple configuration information to C++ source code. In this course, we will look at theory and practice of such understanding and translating of computer programs. We study the construction of compilers and interpreters: how they handle the symbols in source code, analyse them according to the grammar of the programming language, optimize and eventually generate executable code. Part of the course are also run-time environments and tools for compiler generation. A large part of the course consists of programming exercises, in which students build important parts of a compiler.</string>
</description>
<form code="högskoleutbildning" xsi:type="C_OrganisationForm" />
<educationLevel code="grund" xsi:type="UH_EducationLevel" />
<configuration code="kurs" xsi:type="C_Configuration" />
<subject code="392" xsi:type="UH_Subject" />
<subject code="546" xsi:type="UH_Subject" />
<resultIsDegree>false</resultIsDegree>
<credits>
<system code="hp" xsi:type="C_Credits" />
<credits>7.5</credits>
</credits>
<eligibility>
<eligibilityDescription>
<string lang="swe">Datastrukturer och algoritmer, 7,5 högskolepoäng och Objektorienterad programmering, 7,5 högskolepoäng.</string>
<string lang="eng">Data Structures and Algorithms, 7.5 Credit and Object-Oriented Programming, 7.5 Credits.</string>
</eligibilityDescription>
</eligibility>
<recommendedPriorKnowledge>
<string lang="swe">uh</string>
</recommendedPriorKnowledge>
<eligibleForStudentAid xsi:type="C_StudentAid" code="ja" />
</educationInfo>