Read Chapter 15 in Scott. Do all of the exercises
marked "Check Your Understanding" in a social setting with
classmates or friends, but do not turn these in.
Also read Agner Fog's document linked from the course
syllabus. There are parts you will want to skim, but keep an
eye out for cool techniques.
- Problem 15.4 in [Scott].
- Problem 15.10 in [Scott].
- Problem 15.11 in [Scott].
- Problem 15.12 in [Scott].
- Download this unfinished
Hana compiler. Complete one of the code generation
functions that are currently stubs (the ones that call
notDone()). Also, implement one of the following:
inlining, tail recursion elimination, induction variable
simplification, or loop unrolling.
- Build a web page from which people can download the
Hana compiler from the previous problem.
The page should feature some moderately
cool artwork, and be full of useful information for people
that would like to download your stuff (news, documentation,
vital statistics, etc.). Look at sourceforge
and similar sites that provide public downloads for ideas.
The purpose of this problem is for you to be able to give
an affirmative answer to job interviewers that ask whether
you have built any complex projects for public distribution.