Bachelor Project in Compiler Construction the pizza meeting Kim - - PowerPoint PPT Presentation

bachelor project in compiler construction
SMART_READER_LITE
LIVE PREVIEW

Bachelor Project in Compiler Construction the pizza meeting Kim - - PowerPoint PPT Presentation

Bachelor Project in Compiler Construction the pizza meeting Kim Skak Larsen Department of Mathematics and Computer Science (IMADA) University of Southern Denmark (SDU) kslarsen@imada.sdu.dk November 19, 2018 Kim Skak Larsen (IMADA)


slide-1
SLIDE 1

Bachelor Project in Compiler Construction

“the pizza meeting”

Kim Skak Larsen

Department of Mathematics and Computer Science (IMADA) University of Southern Denmark (SDU) kslarsen@imada.sdu.dk

November 19, 2018

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 1 / 13

slide-2
SLIDE 2

Compiler Construction Formalities

the default Computer Science Bachelor Project in the spring semester:

runs late January to late May followed by exam, usually very late May or early June (so deadline is earlier than for other BS projects)

concurrent with DM546 - Compiler Construction (prerequisite) ideally working in groups of three the project is organized in four parts with individual deadlines at the last deadline, the final bachelor report is turned in an oral exam as an individual defense of the group project compulsory core + individualization

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 2 / 13

slide-3
SLIDE 3

Overall Project Structure

Programming Language → Compiler → Intel Pentium Assembler define programming language write compiler (in C) lots of programming increasingly interesting topics to work on – for large enough group

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 3 / 13

slide-4
SLIDE 4

Compiler Construction Language

basic types: integer and boolean

  • perators on basic types

composite types: sequencing and grouping control structures: conditional, iteration structuring: functions and static nested scope references and heap extras:

register allocation garbage collection peep-hole optimization class hierarchy & objects and many many more. . .

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 4 / 13

slide-5
SLIDE 5

Compiler Construction Organization

Typical Parts

1 symbol table 2 scanning & parsing 3 type checking 4 code generation & optimization (+ 1, 2, and 3) Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 5 / 13

slide-6
SLIDE 6

Advertising Compiler Construction

Very useful! Programming languages, query languages, specification languages, . . . Tools: html, XML, L

AT

EX, postscript, . . . Data/format conversions and interfacing Industry: Large companies typically maintain a collection of domain-specific production compilers

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 6 / 13

slide-7
SLIDE 7

Compiler Construction Perks

Compiler of the Year Award T-Shirt

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 7 / 13

slide-8
SLIDE 8

Rumors

The Good, the Bad, and the Ugly Is this for the best students? Is this for the worst students?

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 8 / 13

slide-9
SLIDE 9

Rumors

The Good, the Bad, and the Ugly Is this for the best students? Is this for the worst students? The answer is: Yes! (and for everyone else)

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 8 / 13

slide-10
SLIDE 10

Hall of Fame (selected winners)

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 9 / 13

slide-11
SLIDE 11

Hall of Shame (selected losers)

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 10 / 13

slide-12
SLIDE 12

Statistics

2013 2014 2015 2016 2017 2018 5 10 15 20 25

14 19 22 15 9 23 1 2 6 1 2 3 7 4 3 5 13 17 16 14 7 18 2

Started Stopped Reexams Passed Undecided

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 11 / 13

slide-13
SLIDE 13

Bachelor Project in Compiler Construction

The default bachelor project in Computer Science

– discuss the experience with older students... If you want another project, then find your own topic find an advisor prepare for greater personal responsibility defining a project

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 12 / 13

slide-14
SLIDE 14

Signing up

I want this! What do I do?

Sign up via the normal course registration and send me an email (check my pamphlet to see exactly how this should be done) read (and answer) e-mail regularly in January regarding start-up and group formations don’t book a skiing vacation for after semester start!

Kim Skak Larsen (IMADA) Elective Courses Presentation November 19, 2018 13 / 13