Programming Languages and Compilers

 

Lecture 15

 

In this lecture we will round off the course by looking at the programming language and compiler lifecycle. We will discuss some of the issues that we didn’t have time to look at in detail and hot topic in programming language and compiler research.

 

The slides for this lecture can be found here and here.

 

Literature

 

Watt & Brown, chapter 9.

Sebesta chapter 15 and 16.

Exercises

 

Exercises for lecture 15 will be done from 12.30 till 14.15 on Thursday the 29th of April.

 

For those of you taking the course as an SE course this will also be an opportunity to discuss the exam and the syllabus will be published before.

 

The following exercises are best done as group discussions:

 

  1. Do Sebesta review questions, 8, 9, 11, 12, 13, 14, page 614
  2. Do Sebesta, problem set, 6, 7, 8 (discuss rather than write), page 650
  3. Do Watt and Brown exercise 9.2 on page 353 – do this for C, Java and SML and the language you are implementing – discuss rather than write a report.
  4. Do Watt and Brown exercise 9.6 on page 354
  5. Use Figure 9.1 on page 335 in Watt and Brown to discuss where you are with your project in the programming language life cycle. Which parts of the lifecycle will you cover in yout project? In your opinion, are there parts missing in the life cycle model or should it be refined?

 

You should limit the discussion to about 5 minutes per question.

 

The following exercises you may prefer to do on your own or in pairs and discuss the outcome with your group:

 

  1. Do Watt and Brown exercise 9.1 on page 353, try C, Java and SML compilers
  2. Do Watt and Brown exercise 9.4 on page 353, try gcc, look at gcc flags controling optimizations
  3. Do Watt and Brown exercise 9.5 on page 354
  4. Do Watt and Brown exercise 9.8 on page 355 – sketch the solution
  5. Do Watt and Brown exercise 9.14 on page 357 – sketch the solution
  6. Do Watt and Brown exercise 9.17 on page 358 – sketch the solution
  7. Do Watt and Brown exercise 9.18 on page 358 – sketch the solution