|CSE Home||About Us||Search||Contact Info|
HEREfor the second time. (You do not need to show offsets or other internal structure in the activation records.) Caution: PL/0 doesn't support mutual recursion; see class email discussion on 5/13 beginning here.
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.
Implement storage layout for the extended
PL/0 language. Run the extended compiler with the "-r -R"
options to print the runtime space allocation, (extending
print() methods as needed).
As usual, turn in one solution per group, including:
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.