|
CSE Home | About Us | Search | Contact Info |
HERE
for the second time.
(You do not need to show offsets or other internal structure
in the activation records.)
module M; procedure P(); procedure Q(); begin R(); end Q; begin Q(); end P; procedure R(); begin # HERE P(); end R; begin R(); end M.
As usual, turn in only one solution per group.
Implement storage layout for the extended PL/0 language. Run the extended compiler with the "-r -R" options to print the runtime space allocation. You only need to turn in printouts of those files in which you make major changes, presumably only symtab.c and type.h. As usual, please highlight your changes on your listings, and turn in your whole directory electronically.
As usual, you will be graded on correctness of your implementation, on clarity and good design of your implementation, and on sufficiency of your test cases.
In summary, turn in: