Compilerconstructie (B-KUL-H04G9B)

5 studiepuntenNederlands40 urenEerste semesterUitgesloten voor examencontract
Dit opleidingsonderdeel wordt dit academiejaar niet ingericht, maar wel volgend jaar. Dit opleidingsonderdeel wordt dit academiejaar niet ingericht, maar wel volgend jaar.
POC Computerwetenschappen

Inzicht verwerven in de opeenvolgende fasen van een klassiek compilatieproces, de algoritmen die er gebruikt worden en de verbanden tussen de verschillende fasen. Verstaan van de concepten van een parser-generator. Kunnen toepassen van de verworven inzichten in nieuwe compilatie-gerelateerde situaties, bijvoorbeeld andere programmeertalen of andere architecturen. Zelfstandig relevant materiaal over het compilatieproces kunnen verzamelen, dat kunnen samenvatten en presenteren. In staat zijn recent onderzoek i.v.m. compilatietechnieken te verstaan, op relevantie/ geldigheid te beoordelen en eventueel ertoe bij te dragen.

Enige kennis van laag-niveauimplementatie van programmeertalen. Er zal ook gesteund worden op algoritmisch inzicht dat vroeger werd opgedaan (i.h.b. redeneren over algoritmen), grafentheorie, kennis over stack-gebaseerde uitvoering van imperatieve talen, kennis van instructiesets van specifieke architecturen.
 
Beginvoorwaarden:
 
·        Methodiek van de Informatica of Beginselen van programmeren,
·        Computerarchitectuur en systeemsoftware of Structuur en organisatie van computersystemen.
 

Onderwijsleeractiviteiten

4.7 sp. Compilerconstructie: hoorcollege (B-KUL-H04G9a)

4.7 studiepuntenNederlandsWerkvorm: College35 urenEerste semester
POC Computerwetenschappen

Alle fasen van een klassieke compiler worden in detail behandeld: lexicale analyse en syntaxanalyse, bouwen van abstracte syntaxboom, semantische analyse, generatie van intermediaire code, opdelen in basisblokken en sporen, instuctieselectie, liveness analyse, registerallocatie en code-emissie.
Verder kunnen de volgende onderwerpen behandeld worden: geheugenbeheer, uitzonderingen, polymorfisme, uitgestelde
uitvoering, profiling, debugging, adaptive compilatie, lusoptimisaties, al naar gelang van de interesse van de studenten en / of het
dwingend karakter van deze onderwerpen op een bepaald ogenblik.

Studiekost: 51-75 euro (De informatie over studiekosten zoals hier opgenomen is indicatief en geeft enkel de prijs weer bij aankoop van nieuw materiaal. Er zijn mogelijk ook e- en tweedehandskopijen beschikbaar. Op LIMO kan je nagaan of het handboek beschikbaar is in de bibliotheek. Eventuele printkosten en optioneel studiemateriaal zijn niet in deze prijs vervat.)

In principe kan elk jaar van boek gewisseld worden. Op dit ogenblik zijn goede kandidaten:
·        ’Modern Compiler Implementation in C’ Andrew W. Appel (Cambridge University Press, ISBN 0-521-58653-4)
·        ’Advanced Compiler Design Implementation’ Steven S. Muchnick (Morgan Kaufmann Publ. San Francisco, ISBN 1-55860-320-4)
 
Aanvullingen over nieuwere onderwerpen zijn veelal langs het net beschikbaar.

Het college wordt door de studenten gegeven. Elke les wordt gevolgd door feedback.

 

0.3 sp. Compilerconstructie: practicum (B-KUL-H04H2a)

0.3 studiepuntenNederlandsWerkvorm: Practicum5 urenEerste semester
POC Computerwetenschappen

Alle fasen van een klassieke compiler worden in detail behandeld: lexicale analyse en syntaxanalyse, bouwen van abstracte syntaxboom, semantische analyse, generatie van intermediaire code, opdelen in basisblokken en sporen, instuctieselectie, liveness analyse, registerallocatie en code-emissie. Verder wordt er een selectie van meer geavanceerde onderwerpen behandeld: geheugenbeheer, uitzonderingen, polymorfisme, uitgestelde uitvoering, profiling, debugging, adaptive compilatie, lusoptimisaties, net-op-tijd-compilatie ... Wat juist aan bod komt wordt bepaald door de interesse van de studenten. Hete onderzoekstopics krijgen daarbij voorrang.

*

Elke student geeft een les waarin hij/ zij een onderwerp uit het handboek - of een bijkomend onderwerp - presenteert voor de medestudenten. Dit gebeurt meestal in groepjes van twee studenten voor een les van bijna 2 uur. Zulk een les wordt onmiddellijk gevolgd door een nabespreking naar vorm en inhoud door de medestudenten en de docent. De studenten stellen ook de examenvragen op over de leerstof die in hun les is behandeld. De examenvragen worden op het einde van de cursus globaal besproken.

Evaluatieactiviteiten

Evaluatie: Compilerconstructie (B-KUL-H24G9b)

Type : Examen tijdens de examenperiode
Evaluatievorm : Mondeling
Vraagvormen : Open vragen, Gesloten vragen
Leermateriaal : Cursusmateriaal


Een deel van de punten (5/20) staat op het geven van een les. Het geven van de les kan niet overgedaan worden bij een tweede examenkans.

Wanneer de faculteit wegens overmacht beslist dat bij een mondeling examen de voorbereidingstijd beperkt moet zijn tot minder dan een uur, dan wordt het mondeling examen vervangen door een schriftelijk examen. De impact hiervan wordt dan beschreven op Toledo.

 

Het geven van de les (waarop 5/20 staan) kan niet overgedaan worden. De punten van die les worden overgedragen naar de tweede examenkans.